都是获取偏移地址,为什么指令“LEAEBX,[ESI]”正确,而指令“MOVEBX,OFFSET[ESI]”就错误?
第1题:
下面是用简化段定义编写的程序,其功能是将数据段中20个字节的数组移入20个字的字表中,要求每个字节元素作为字表中的高位字节。在横线处填入适当的指令,使程序能完成预定的功能。
.MODEL SMALL
.586
.STACK 200H
.DATA
BYTE TAB DB 20 DUP(?)
WORD TAB DW 20 DUP(?)
.CODE
MOV AX,【 】
MOV DS,AX
XOR ESI,ESI
NEXT: MOV AX,WORD_TAB [ESI*2]
MOV AH,BYTHTAB [ESI]
MOV WORD TAB[ESI*2),AX
INC ESI
CMP ESI,20
JB NEXT
MOV AX,4C00H
INT 21H
END STAR
第2题:
第3题:
串传送指令MOVSW,执行CLD指令后,每传送一次,串的()
第4题:
执行LEA BX,TAB 指令与执行MOV BX,OFFSET TAB指令的功能相同吗?哪条指令执行的效率高?为什么?
第5题:
指出INC [ESI]指令的错误原因。
第6题:
指出MOV EAX,2[ESI*4]指令中源操作数和目的操作数的寻址方式。
第7题:
指出MOV [ESI],AX指令中源操作数和目的操作数的寻址方式。
第8题:
执行CLD指令后,串传送指令CMPSB,每比较一次,源串和目的串的()。
第9题:
有关机器指令标号和伪指令的名字的说法中,正确的是()。
第10题:
偏移地址+1
偏移地址+2
偏移地址-1
偏移地址-2
第11题:
MOV.EAX,10H
IN.EAX,DX
MOV.[EBX][EBP],10H
MOV.EBX,OFFSET[EBX][ESI]
第12题:
第13题:
相邻两项工作之间的时间隔LAGi-j为( )
A.EFi
B.ESi+Di
C.ESi-Efi
D.ESi+Tfi
第14题:
第15题:
都是获取偏移地址,为什么指令“LEA EBX,[ESI]”正确,而指令“MOV EBX,OFFSET[ESI]”就错误?
第16题:
指出MOV [ESI],[EDI]指令的错误原因。
第17题:
指出MOV EAX,[ESI][EBP+0FFFF0H]指令中源操作数和目的操作数的寻址方式。
第18题:
指令MOVDI,OFFSET[BX][SI]是正确的。
第19题:
比较ESI、microESI和nanoESI,下列说法中不正确的是:()
第20题:
用指令MOV BX,SEG COUNT指令,可以得到存储单元COUNT的()。
第21题:
第22题:
偏移地址+1
偏移地址+2
偏移地址-1
偏移地址-2
第23题:
机器指令标号能够以数字开头,而伪指令的名字不行
机器指令标号后面带冒号,而伪指令的名字后面没有
机器指令标号和伪指令的名字都代表代码段中的偏移地址
机器指令标号和伪指令的名字都代表数据段中的偏移地址