首页
学习
活动
专区
圈层
工具
发布
首页
学习
活动
专区
圈层
工具
MCP广场
社区首页 >问答首页 >细节avr汇编程序修饰符lo8很难找到

细节avr汇编程序修饰符lo8很难找到
EN

Stack Overflow用户
提问于 2013-12-28 06:56:03
回答 1查看 2.3K关注 0票数 0

最近,在浏览obdev的atmel avr虚拟usb驱动器时,我发现了这个表达式

代码语言:javascript
运行
复制
lo8(-usbrxbuf)

遗憾的是,在avr的文献中,关于lo8修饰语的论述并不多.这里有人能解释清楚吗?或者给出任何链接?

EN

回答 1

Stack Overflow用户

发布于 2013-12-28 09:20:42

在谷歌搜索"lo8 avr“后,首当其冲。

lo8此修饰符允许您将地址表达式的位0到7用作8位可重定位表达式。

编辑

就像这里:

代码语言:javascript
运行
复制
push    YH                  ;2 [2]
lds     YL, usbInputBufOffset;2 [4]
clr     YH                  ;1 [5]
subi    YL, lo8(-(usbRxBuf));1 [6]
sbci    YH, hi8(-(usbRxBuf));1 [7]

看来它在这里找到了缓冲区地址。我不知道为什么从偏移量中减去负基址而不是加,但是.

哦,我猜“重新定位”在这里的意思是“装载时间”。也就是说,这个值不一定要在装配时知道,但是在运行时它必须是已知的和常量的。也许"lo8“和"hi8”创建了一个重新定位信息类型加载器符号(或表达式)--非常类似于段地址。

票数 1
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/20811927

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档