假设R[ax]=FFFAH,R[bx]=FFF0H,则执行Intel格式指令“add ax,bx”后,AX、BX中的内容各是什么?(注意:将操作数作为有符号数)
解:指令add ax,bx的功能是将寄存器ax的内容和寄存器bx的内容相加,结果保存在寄存器ax中,所以加法指令执行完后,寄存器bx的内容不变。 (1分)因为操作数是有符号数,所以参与运算的是数的机器码,寄存器ax的机器码是1111 1111 1111 1010,寄存器bx的机器码是1111 1111 1111 0000,所以寄存器ax的内容是:1111 11111111 1010+1111 1111 1111 0000=1111 1111 1110 1010B=FFEAH。 (4分)
举一反三
- 指令 MOV<br/>AX, BX 和指令 LEA AX, [BX] 执行后 AX 的内容相同。
- 指令MOV AX, BX执行结束后,AX的内容和LEA AX, [BX]执行后AX的内容相同。
- 指令 MOV<br/>AX, BX 和指令 LEA<br/>AX, [BX] 执行后AX的内容相同。
- TABLE DW 10, 20, 30, 40 ┇ MOV BX, OFFEST TABLE ADD BX, 4 MOV AX, [BX] 上述指令序列执行后,AX的内容为
- 指令MOV<br/>AX,BX执行结束后AX的内容和指令LEA<br/>AX,[]执行后AX的(内容相同)。( )
内容
- 0
DATA SEGMENT A DW 0 B DW 0 C DW 230,20,54 DATA ENDS ┇ LEA BX ,C MOV AX ,[BX] MOV B ,AX MOV AX ,2[BX] ADD AX ,B MOV A , AX 上述指令中,LEA BX,C可换成MOV BX,OFFSET C
- 1
指令MOV<br/>AX,BX执行结束后AX的内容和指令LEA<br/>AX,[BX]执行后AX的内容相同。(<br/>)
- 2
执行下列指令后,写出寄存器的值,(AX)=______。 TABLE DW l0,20,30,40,50 ENTRY DW3 … MOV BX,OFFSET TABLE ADD BX,ENTRY MOV AX,[BX]
- 3
执行下列指令后,写出寄存器的值,(AX)=______。 TABLE DW 10,20,30,40,50 ENTRY DW 3 … MOV BX,OFFSET TABLE ADD BX,ENTRY MOV AX,[BX]
- 4
执行如下操作后,(AX)= ()。 MOV AX, 0 MOV BX, 1 MOV CX, 100A: ADD AX, BX INC BX LOOP A