ADS1.2 中 汇编的几个不懂的地方, 初学求帮助(ARM)

zhiys227 2008-10-07 09:51:55
X EQU 11
Y EQU 8

BIT23 EQU (1<<23)
AREA Example3,CODE,READONLY
ENTRY
CODE32
START ;USE "DIV" AND "MOV" INSTRUCTION TO ACHIEVE : R8 = R3 = X + Y
MOV R0,#X
MOV R1,#Y
ADD R3,R0,R1
MOV R8,R3
;USE "MVN" AND "SUB" INSTRUCTION TO ACHIEVE : R5 = 0x5FFFFFF8 - R8 * 8
MVN R0,#0xA0000007
SUB R5,R0,R8,LSL #3
;USE "CMP" INSTRUCTION TO ACHIEVE (5 * Y/2)>(2 * X) ? (R5 &= 0xFFFF0000) : (R5 |= Ox000000FF)
MOV R0,#Y
ADD R0,R0,R0,LSL #2
MOV R0,R0,LSR #1
MOV R1,#X
MOV R1,R1,LSL #1
CMP R0,R1
LDRHI R2,=0xFFFF0000
ANDHI R5,R5,R2
ORRLS R5,R5,#0x000000FF
;USE "TST" INSTRUCTION TO TEST R5'S BIT23 IS "1" OR NOT, YES, SET R5'S BIT6 AS "0"
TST R5,#BIT23
BICNE R5,R5,#0x00000040
B STRRT
END

1. 以下内容的意思是什么
AREA Example3,CODE,READONLY
ENTRY
CODE32
2. LDRHI, ANDHI, ORRLS 不太懂 为什么不是 LDR, AND OR?

3. B START 是什么意思?

以上三个问题, 拜托了。
...全文
429 6 打赏 收藏 转发到动态 举报
写回复
用AI写文章
6 条回复
切换为时间正序
请发表友善的回复…
发表回复
bai_shan_shan 2011-04-19
  • 打赏
  • 举报
回复
那个博客没有我想看到的东西啊
xidianfangyuan 2011-03-31
  • 打赏
  • 举报
回复
需要回复才能看,这个好麻烦
myfanmy 2010-11-14
  • 打赏
  • 举报
回复
为什么需要回复才能看
dontium 2009-08-03
  • 打赏
  • 举报
回复
楼主看一下《ARM体系结构与编程》杜春雷。这本书很好,网上有电子文档。我过去看了其它书本后还是疑问多多,而看了这本书后就大有长进。
gooogleman 2008-11-17
  • 打赏
  • 举报
回复
3 B START 表示跳转到START处,类似C的函数调用。
2 LDRHI, ANDHI, ORRLS
——ARM的条件执行语句,这个东西呢,你看看那这个博客吧。
http://blog.csdn.net/gooogleman/archive/2008/11/16/3311554.aspx
所有的条件执行语句都有了,看看吧,会有收获的。
CedarDiao 2008-11-15
  • 打赏
  • 举报
回复
1

AREA Example3,CODE,READONLY
ENTRY
CODE32

这段代码声明一个域,这是必需的,域的名字叫Example3,域的类型是CODE,属性为Readonly
Entry表示程序从这一行之后开始运行。
CODE32表示这个域的汇编代码是32位ARM指令集的(还有一种叫Thumb的指令集为16位)。

2 LDRHI, ANDHI, ORRLS 都是加了条件的或者变化过的,他们的意思与LDR, AND OR差的不远,找本书(ARM体系结构与编程)看看就明白其中的差别了

3 B START 表示跳转到START处,即CODE32后面的那一行。

21,500

社区成员

发帖
与我相关
我的任务
社区描述
汇编语言(Assembly Language)是任何一种用于电子计算机、微处理器、微控制器或其他可编程器件的低级语言,亦称为符号语言。
社区管理员
  • 汇编语言
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告
暂无公告

试试用AI创作助手写篇文章吧