1.写出每条汇编指令执行后相关寄存器的值
mov ax,62627 AX=________________
62627转换为10进制,为F4A3H,故AX=F4A3H
mov ah,31H AX=________________
ah=31H,则AX=31A3H
mov al,23H AX=________________
al=23H,则AX=3123H
add ax,ax AX=________________
AX=AX+AX=6246H
mov bx,826CH BX=________________
BX=826CH
mov cx,ax CX=________________
CX=AX=6246H
mov ax,bx AX=________________
AX=BX=826CH
add ax,bx AX=________________
ax=ax+bx=104D8H,但是实际只有04D8H,因为AX放不下那么多
mov al,bh AX=________________
因为bx=826CH,所以bh=82H,al=bh=82H,又因为AX原本等于04D8H,
ah不变,则AX=0482H
mov ah,bl AX=________________
bl=6CH,ah=6CH,之前AX=8282H,现在AL不变,AH变,则AX=6C82H
add ah,ah AX=________________
ah=ah+ah=D8H 之前AX=6C82H,al不变,则现在AX=D882H
add al,6 AX=________________
6换为16进制,06H,AX之前为D882H,AH未变,AL变为88H则现在AX=D888H
add al,al AX=________________
al=88H+88H=110H,AL只能存放100H以内,溢出,所以al=10H,之前AX=D888H,AH未变,AX=D810H
mov ax,cx AX=________________
CX=6246H,ax=cx=6246H
2.只能使用目前学过的汇编指令,最多使用4条指令,编程计算2的4次方
解析:目前我们学过的指令:mov,add
mov是数据传送指令,把一个数据的源地址传送到目标地址(寄存器间也是一样),如mov ax,2 那么ax=2
add,两数相加,比如add ax,bx 那么ax=ax+bx
答案:mov ax,2--------------ax=2
add ax,ax--------------ax=2+2=4
add ax,ax--------------ax=4+4=8
add ax,ax--------------ax=8+8=16
(想把自己的学习过程记录下来,相当于是重新学习一遍,希望我能变的更好)