2077|4

12

帖子

2

TA的资源

一粒金砂(初级)

楼主
 

MSP430开始位读取和转码问题 [复制链接]

各位大神,刚接触MSP430,遇到一个疑问:
MSP430上电后,开始从"C000"读取Rom信息,下面为"C000-C003"的Rom 存储的值:
C000-C003:31 40 00 04
IAR的disassembly里面这步的转码为:4031 0400
机器码为:MOV.W #0X400SP
symbol为:?csstart_begin
个人有以下疑问:
1.Iar 的disassembly 转码为什么会从“31 40 00 04” ==>"40 31 04 00"? (要把后面的Bit值提到前面,前面转移到位后面)
2.“40 31 .04 00”是根据什么逻辑转换到机器码“MOV.W #0X400SP”?
3.同时Symbol 的信息又是从哪里转换的?

请各位大神不吝赐教,感谢!!!!(本人基本上是小白)

最新回复

你启动DEBUG时,IAR把执行代码下载到目标板,同时把符号表载入内存,你就可以对照源码了。 事实上你可以改debug的设置让IAR只装入符号表而不下载程序,这样没必要就不用总擦除Flash了  详情 回复 发表于 2014-4-4 02:16
 
点赞 关注

回复
举报

6040

帖子

205

TA的资源

版主

沙发
 
1. MSP430的指令是16位的,所以会从起始地址取出一个16位指令,并且MSP430是小端模式的,也就是一个 十六位数的低字节在低地址,高字节在高地址,所以31 40 转换为一个十六位数的话,就是0x4031.
2. 要查看指令对应的机器码(或者由机器码推断指令),请参考相应型号的user's guide的CPU或者CPUX章节。

点评

感谢,你的回答,对第一个和第二个问题,基本上知道了. 針對第三個問題; 該怎麼去理解?  详情 回复 发表于 2014-4-2 13:55
 
 

回复

12

帖子

2

TA的资源

一粒金砂(初级)

板凳
 
lcofjp 发表于 2014-4-1 22:58
1. MSP430的指令是16位的,所以会从起始地址取出一个16位指令,并且MSP430是小端模式的,也就是一个 十六位 ...

感谢,你的回答,对第一个和第二个问题,基本上知道了.
針對第三個問題;
該怎麼去理解?
 
 
 

回复

59

帖子

0

TA的资源

一粒金砂(中级)

4
 
你启动DEBUG时,IAR把执行代码下载到目标板,同时把符号表载入内存,你就可以对照源码了。
事实上你可以改debug的设置让IAR只装入符号表而不下载程序,这样没必要就不用总擦除Flash了

点评

有点不懂,有没有文件让我参考下??  详情 回复 发表于 2014-4-7 13:09
 
 
 

回复

12

帖子

2

TA的资源

一粒金砂(初级)

5
 
mangoal 发表于 2014-4-4 02:16
你启动DEBUG时,IAR把执行代码下载到目标板,同时把符号表载入内存,你就可以对照源码了。
事实上你可以改 ...

有点不懂,有没有文件让我参考下??
 
 
 

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

随便看看
查找数据手册?

EEWorld Datasheet 技术支持

相关文章 更多>>
关闭
站长推荐上一条 1/10 下一条

 
EEWorld订阅号

 
EEWorld服务号

 
汽车开发圈

About Us 关于我们 客户服务 联系方式 器件索引 网站地图 最新更新 手机版

站点相关: 国产芯 安防电子 汽车电子 手机便携 工业控制 家用电子 医疗电子 测试测量 网络通信 物联网

北京市海淀区中关村大街18号B座15层1530室 电话:(010)82350740 邮编:100190

电子工程世界版权所有 京B2-20211791 京ICP备10001474号-1 电信业务审批[2006]字第258号函 京公网安备 11010802033920号 Copyright © 2005-2024 EEWORLD.com.cn, Inc. All rights reserved
快速回复 返回顶部 返回列表