打印
[STM32F1]

土法计算BL调用命令机器码

[复制链接]
1220|2
手机看帖
扫描二维码
随时随地手机跟帖
跳转到指定楼层
楼主
yjmwxwx|  楼主 | 2016-6-22 19:55 | 只看该作者 回帖奖励 |倒序浏览 |阅读模式
本帖最后由 yjmwxwx 于 2016-6-23 10:24 编辑

我知道手册上有公式,但是我看不懂。 BL命令有32位,分成高和低16位,我只关心0-10位和16-26位,其他的位手册上有但是我不懂英文。

向前:
0XCD9C调用0X830A
计算方法: 0XCD9C 减 0X830A 等于 0X4A92
0X4A92 加 0X04 = 0X4A96
0X4A96除以2 等于 0X254B
0X1000 减法 54B 等于 AB5
AB5是 0-10位

0X4A96的4取反等于0XFB 放到 16-26 位
得到的机器码 0xF7FBFAB5


向后:
0X8BD0调用0XCD82
CD82 减 8BD0 等于 41B2
41B2减0X04 等于41AE
41AE除以2等于20D7
20D7去掉2就是0-10位
16-26位就是41AE里面的4
机器码 0XF004F8D7




沙发
戈卫东| | 2016-6-23 06:57 | 只看该作者
好深奥看不懂

使用特权

评论回复
板凳
john_lee| | 2016-6-23 09:03 | 只看该作者
貌似只有写arm汇编器的,才需要搞懂指令的编码。

使用特权

评论回复
发新帖 我要提问
您需要登录后才可以回帖 登录 | 注册

本版积分规则

119

主题

2765

帖子

48

粉丝