88问答网
所有问题
ARM 汇编指令TST问题
TST 指令,为什么当位与结果为0时,设置eq位呢? eq位不是相等时候才设置么?
比如111111和000000位与结果是0,设置EQ(Z=1),那它们相等吗?
举报该问题
推荐答案 2014-10-07
eq 应当称为“判断的条件”,而把 Z 标志位称为“eq”位是不恰当。
Z 标志(和其它标志位)能被算术指令(包括加减乘除和比较)和逻辑指令(位运算指令和移位指令)改变,当需要判断“eq”时,上一条影响 Z 标志的指令,应该是减法或比较指令,而不应该是其它的指令,比如:
算术运算:加法——两个数相加结果为 0,不能使用 eq 判断两数相等。
逻辑运算:移位——一个数移位结果为 0,这个与 eq 什么都无从谈起。
还有你问题里的 TST 指令,也和 eq 扯不上关系。
不知题主明白没有?如果还有疑问请继续追问,如果满意请采纳,谢谢。
温馨提示:答案为网友推荐,仅供参考
当前网址:
http://88.wendadaohang.com/zd/MKBSgKtB1tK1Kc1tcKa.html
其他回答
第1个回答 2014-10-05
TST指令是用2数相减来判断的。
相似回答
ARM
汇编指令TST问题
答:
z 标志位称为“eq”位是不恰当。z 标志(和其它标志位)能被算术
指令
(包括加减乘除和比较)和逻辑指令(位运算指令和移位指令)改变,当需要判断“eq”时,上一条影响 z 标志的指令,应该是减法或比较指令,而不应该是其它的指令,比如:算术运算:加法——两个数相加结果为 0,不能使用 eq 判断...
ARM
的
汇编指令问题TST指令
bit23是怎么回事
答:
首先,
TST指令
是位测试指令,其将寄存器Rn值与操作数2的值按位进行与操作,但它操作完并不存储操作后的数据,只是更新CPSR中相应位。具体为,TST指令测试的结果为全0时,CPSR中的EQ标志有效,只要有一位为1,则CPSR中的NE标志有效。而BIC指令就是简单地将寄存器的值与操作数的反码与操作,结果存入寄...
ARM
汇编指令TST问题
答:
每一位都和相对位进行“与”,第一位与第一位,地二位与第二位,依次进行,当每位的结果都是0时(即为0),才是0 啊。希望有帮到你,哪怕一点点,元宵节快乐~~~
汇编
语言
tst
是什么意思
答:
tst指令
是
汇编
语言中的一个关键字,其意思是比较两个操作数的值,并将相应的状态寄存器设置为反映比较结果的值。该指令的常见用途是与and指令结合使用,用于实现位掩码。tst指令通常用于比较寄存器或内存地址中的值。如果操作数相等,那么Z标志位会被设置为1,否则设置为0。如果第一个操作数小于第二个...
嵌入式
arm
汇编 指令 tst
和beq 这两个指令分别什么意思呢?跪求详解...
答:
TST指令
是数据处理指令,用于把一个寄存器的内容和另一个寄存器的内容或立即数进行按位的与运算,并根据运算结果更新CPSR中条件标志位的值。 例如:TST R1,#%1用于测试在寄存器R1中是否设置了最低位。BEQ指定是跳转指令,但是跳转要满足一定的条件,例:CMP R1,#0 BEQ Label 即当R1和...
arm
v7-A系列9-arm硬件
汇编指令
答:
测试
指令
如cmp(比较)、cmn(无进位比较)、
tst
(测试是否零)和teq(测试是否相等)则关乎结果判断,它们会根据运算结果更新CPSR,为后续处理提供重要线索。在
arm
v7-A中,状态寄存器CPSR的特殊性在于它反映了系统的运行状态和控制信息,但权限管理至关重要。用户模式下的程序只能通过APSR间接操作CPSR,而...
ARM汇编
求正数负数个数
答:
ARM还分
ARM汇编
、thumb 汇编 现在cortex -a 都是thumb-2 ARMV6和ARMV7的
指令
集都不一样,最新的ARMv8更不一样。我这个是ARMV7-M指令集,手机上A8、A9是ARMV7指令集,虽然差了各-M但是一不一样,-M有除法指令 fushu: .int 2,3,5,3,-1,-2,-4,-7,-8,-133,-444 shiyan:ldr r0, ...
大家正在搜
汇编cwd指令
汇编xchg指令
汇编cbw指令
汇编常用指令
汇编指令详解
汇编jmp指令
汇编jnz指令
汇编not指令
汇编hlt指令
相关问题
ARM 汇编指令TST问题
ARM的汇编指令问题TST指令bit23是怎么回事
ARM汇编指令NOP指令问题有哪些?
嵌入式 arm 汇编 指令 tst和beq 这两个指令分别什...
汇编BIC指令问题
简单汇编bic命令疑问
对TST感兴趣的来回答