检测点2.1
(1)写出每条汇编指令执行后相关寄存器的值
mov ax,62627 AX= F4A3H 62627对应十六进制为F4A3,将对应的十六进制数放入AX(注意这条指令只能通过汇器汇编后编执行,不能直接在dbeug中写入执行)
mov ah,31H AX= 31A3H 将十六进制数31H送入AX的高8位
mov al,23H AX= 3123H 将十六进制数23H送入AX的低8位
add ax,ax AX= 6246H AX= AX+AX = 3123H+3123H = 6246H
mov bx,826CH BX= 826CH 将十六进制数826CH送入AX寄存器中
mov cx,ax CX= 6246H 将AX寄存器中的内容送入CX寄存器中
mov ax,bx AX= 826CH 将BX寄存器中的内容送入AX寄存器中
add ax,bx AX= 04D8H AX = AX + BX = 826CH + 826CH = 104D8H(溢出一位,舍去后变为04D8H)
mov al,bh AX= 0482H 将BX寄存器的高8位 82H 送入 AX 寄存器的低8位
mov ah,bl AX= 6C82H 将BX寄存器的低8位 6CH 送入 AX寄存器的高8位
add ah,ah AX= D882H AH = AH + AH = 6CH + 6CH = D8H
add al,6 AX= D888H AL = AL + 6 = 82H + 6H = 88H (注意6是十进制数)
add al,al AX= D810H AL = AL + AL = 88H + 88H = 110H 溢出,舍去一位后变为10H。(注意,溢出的位不会进位到高8位上)
mov ax,cx AX= 6246H 将寄存器CX中的值送入到AX中
(2)只使用目前学过的汇编指令,最多使用4条指令,编程计算2的4次方
mov ax,2 ;2的1次方 = 2
add ax,ax ;2的2次方 = 2 + 2 = 4
add ax,ax ;2的3次方 = 4 + 4 = 8
add ax,ax ;2的4次方 = 8 + 8 = 16