汇编SUB指令?
这是减法。例如,MOV ax,2 MOV BX,1 sub ax,BX,其中sub ax,BX是ax中的值减去BX中的值,等于1,然后将结果(即1)放入ax中。
汇编语言CMP指令用法?在ARM汇编中,ADD可以替换为ADDS吗,SUB可以替换为SUBS吗?为什么?
在arm中,add没有进位,而add有进位。操作完成后,需要设置符号位,因此不能替换。Sub和Sub用于减法,用法类似。如果指定了s,则指令将根据结果更新N、Z、C和V标记。16位指令。在thumb-2之前的thumb代码中可以使用以下形式的指令。在thumb-2代码中使用时,它们是16位指令:adds、RD、RN、#immm,范围从0到7。RD和RN都必须是lo寄存器。Addsrd、RN、rmrd、RN和RM都必须是lo寄存器。Add、RD、RD、rmarv6和更低:RD和/或RM必须是hi寄存器。Armv6t2及更高版本:无此限制。加法Rd,Rd,#imimm的范围为0-255。Rd必须是lo寄存器。Sub-Rd、RN、rmrd、RN和RM都必须是lo寄存器。Subs Rd,RN,#imimm范围为0-7。RD和RN都必须是lo寄存器。Subs Rd,Rd,#immm范围为0-255。Rd必须是lo寄存器。
sub是什么指令?
子减法指令从指定的源组件中减去二进制数,并将结果发送到指定的目标组件。
汇编SUB是什么意思?
在汇编中,add是加法,MOV是移动,sub是减法。
像add、sub和MOV一样,它们都有两个操作对象。
有关sub的用法,请参考以下示例:
sub ax,9从ax中减去9,然后将结果分配给ax
sub ax,BX表示ax=BX-ax
sub ax,[0]将偏移地址为0的内存单元-ax分配给ax
SUB指令的疑问?
1。当子减法指令减去两个数字时,它不区分它们是有符号的还是无符号的。通过减法得到的十六进制或二进制数字是相同的,但of用于判断有符号溢出,CF用于判断无符号溢出。
(1)两个符号相反的数字相减时,如果差的符号与减法的符号相同,则of=1,即正数减去负数得到负数,负数减去正数得到正数。
(2)当最高位置向上形成借用位置时,CF=1。
2. sub 80h 1的书写错误。你想表示80h减1吗?如果80h是负数,1是正数,79h是正数,那么of=1。