有问题不懂,是小问题,别见笑。
有一汇编指令:add ax,1406H 意思是将寄存器AX中的数据加上8 为什么加上之后寄存器AX的数据为6226H?
请问这是如何相加法?是怎么计算的?
add al,bl的意思和上面的指令意思一样么?
我实在不明白,还请个位大哥大姐们指教,请尽量讲的通俗易懂。
先谢谢了!!! 1406H是源操作数,ax是目的操作数,ax+1406H的结果放ax中,若运算后的ax=6226H,则说明目的操作数ax中原值为4E20H 原帖由 tigerisme 于 2007-9-8 09:12 发表 https://www.chinapyg.com/images/common/back.gif
1406H是源操作数,ax是目的操作数,ax+1406H的结果放ax中,若运算后的ax=6226H,则说明目的操作数ax中原值为4E20H
我知道结果,可是不知道怎么去算,是怎么个算法,版主可否说明白点? 加减法运算
兄弟先学习一下汇编基础知识吧...
二、算术运算指令
───────────────────────────────────────
ADD 加法.
ADC 带进位加法.
INC 加 1.
AAA 加法的ASCII码调整.
DAA 加法的十进制调整.
SUB 减法.
SBB 带借位减法.
DEC 减 1.
NEC 求反(以 0 减之).
CMP 比较.(两操作数作减法,仅修改标志位,不回送结果).
AAS 减法的ASCII码调整.
DAS 减法的十进制调整.
MUL 无符号乘法.
IMUL 整数乘法.
以上两条,结果回送AH和AL(字节运算),或DX和AX(字运算),
AAM 乘法的ASCII码调整.
DIV 无符号除法.
IDIV 整数除法.
以上两条,结果回送:
商回送AL,余数回送AH, (字节运算);
或商回送AX,余数回送DX, (字运算).
AAD 除法的ASCII码调整.
CBW 字节转换为字. (把AL中字节的符号扩展到AH中去)
CWD 字转换为双字. (把AX中的字的符号扩展到DX中去)
CWDE 字转换为双字. (把AX中的字符号扩展到EAX中去)
CDQ 双字扩展. (把EAX中的字的符号扩展到EDX中去)
我上面所说就是基础啦。]
谢谢你,我把这些都看过了,可是和上面的有什么关系? ADD即是加法指令,又是除法的ASCII码调整?
不明白。 原帖由 xiao19881212 于 2007-9-8 12:40 发表 https://www.chinapyg.com/images/common/back.gif
ADD即是加法指令,又是除法的ASCII码调整?
不明白。
ADD即是加法指令,AAD是除法的ASCII码调整,注意区分一下,学习就是要细心和耐心/:L 你先看一下AX中的数据是多少。
页:
[1]