flyriz的笔记 https://bbs.21ic.com/?706617 [收藏] [复制] [RSS]

日志

ARM体系结构与编程 勘误 错误

已有 1106 次阅读2012-10-20 06:34 |个人分类:ARM|系统分类:ARM| ARM

      前段时间完整的看完了《ARM体系结构与编程》,看的过程中发现了里面的有不少的错误,有的甚至严重影响理解.在下不自量力,打算花点时间,把我发现的错误提出来并改正.也欢迎大家一起来完善.
原创文章,后续可能会编辑更新,转载注明出处。flyriz 2012-10-16

(1)P27
QQ截图20121015025817.jpg 
最后一句有问题,应改为:当shift_imm!=0时,循环器的进位值为操作数<shifter_operand>最后被移出的位。
依据:ARM Architecture reference manual  P225 : the carry out from the shifter is the last bit shifted out......

(2)P52
QQ截图201210160159142.jpg 
事后应为:事先

(3)P56
QQ截图201210160159142.jpg 
事先更新改为:事后更新
图片中划红线部分删除。依据:ARM Architecture reference manual  P278

(4)P61
在指令的编码格式表格中,本页中的两处都写成:应为0 。根据ARM Architecture reference manual,这里应为SBO,SBO的含义是:Should-Be-One,我这不知道这里怎么就变成了“应为0”,实在错的离谱。

(5)P71
12 BIC位清除指令
BIC 指令将<shifter_operand>表示的数值与寄存器<Rn>的值的反码按位做逻辑与操作。。。
这一句应为:BIC 指令将寄存器<Rn>的值与<shifter_operand>表示的数值的反码按位做逻辑与操作。。。

(6)P72
第2、3行这里,前后有两句一模一样的话:将某一位与1做BIC操作。。。把后面的那一句中的1改成0.

(7)P84
将第一句话改成:......字节数据存放在目标寄存器的bits[31:24](寻址方式确定的地址bit[0]为0)或者bits[15:8]寻址方式确定的地址bit[0]为1)。这里是括号打错了,否则,实在无法理解。同理,P88页 LDRT的介绍中也有同样的错误。

路过

鸡蛋

鲜花

握手

雷人

评论 (0 个评论)