[51单片机] 51汇编中如何利用C51定义的结构体变量

[复制链接]
 楼主| juginhine 发表于 2013-9-23 17:43 | 显示全部楼层 |阅读模式
大家好,现在碰到一个问题,就是项目中绝大部分代码都是c语言编写,然后c代码中定义了一个全局结构体变量。现在pwm中断中的一个sin计算是利用汇编代码写的,需要利用到c结构体中的成员变量参与计算,不知道汇编中如何使用c代码的结构体成员变量。请高手指点。谢谢
wookongbun 发表于 2013-9-23 17:55 | 显示全部楼层
本帖最后由 wookongbun 于 2013-9-23 18:00 编辑

没用过汇编,以下纯属现象:
得到这个全局变量的地址,然后通过增加偏移量的方式访问结构体的成员。
或者直接得到每个成员的地址,然后参与运算。
或者是在定义这个全局变量的时候用"@"为它指定一个地址,这个就简单很多。

以上都要考虑结构体成员对齐的问题。
ayb_ice 发表于 2013-9-23 18:25 | 显示全部楼层
通过首地址+偏移地址的方式,

偏移只能自己计算

您需要登录后才可以回帖 登录 | 注册

本版积分规则

16

主题

180

帖子

0

粉丝
快速回复 在线客服 返回列表 返回顶部