汇编语言程序设计

已知DF=1,(SI)=100H,(DI)=200H,指令SCASW执行后,SI和DI的值分别是()。A、(SI)=0FEH,(DI)=1FEHB、(SI)=100H,(DI)=202HC、(SI)=100H,(DI)=1FFHD、(SI)=100H,(DI)=1FEH

题目

已知DF=1,(SI)=100H,(DI)=200H,指令SCASW执行后,SI和DI的值分别是()。

  • A、(SI)=0FEH,(DI)=1FEH
  • B、(SI)=100H,(DI)=202H
  • C、(SI)=100H,(DI)=1FFH
  • D、(SI)=100H,(DI)=1FEH
参考答案和解析
正确答案:D
如果没有搜索结果,请直接 联系老师 获取答案。
相似问题和答案

第1题:

交换寄存器SI,DI的内容,正确的程序段是( )

A.PUSH SI PUSH DI POP SI POP DI

B.PUSH SI PUSH DI, POP SI,DI

C.MOV AX,SI MOV SI,DI MOV DI,AX

D.MOVAX,SI MOV BX,DI XCHG BX,AX


正确答案:A
解析:在堆栈中,无论是压人还是弹出,都必须以字为单位进行,即一次压人必须压入堆栈一个字,弹出时,也必须从堆栈中取出一个字。所以选项B是错误的;在串操作指令中,SI用作源变址寄存器,DI用作目的地址寄存器,所以选项C是错误的;选项D交换的是AX寄存器和BX寄存器里的内容,不符合题意;只有选项A是正确的,它依次把SI和DI的值推进栈中,然后把DI的值弹出来给SI,把SI的值弹出来给DI,即完成了SI和DI内容的交换。

第2题:

下列四条指令中错误的是()。

A.MOVAX,[SI]
B.MOVAX,[BP+DI]
C.MOVAX,[DI]
D.MOVAX,[BP—DI]

答案:D
解析:

第3题:

交换寄存器SI、DI的内容,正确的程序段是( )。

A.PUSH SI PUSH DI POP SI POP DI

B.PUSH SI PUSH DI POP DI POP SI

C.MOV AX,SI MOV SI,AX MOV DI,BX

D.MOVAX,SI MOV BX,DI XCHG BX,AX


正确答案:A

第4题:

指出MOV AX,[SI+DI]指令的错误原因。


正确答案:源操作数寻址方式错,两个寄存器都是变址寄存器。

第5题:

下列指令中,非法的是()

  • A、MOV [SI],[DI]
  • B、IN AL,DX
  • C、CMP COUNT[SI],AX
  • D、PUSH DX

正确答案:A

第6题:

MOVAX,[SI][DI]()


答案:错
解析:

第7题:

若DF=1,执行串操作指令MOVSW时,地址指针自动变化是().

A.SI+SI+1,DI=DI+1
B.SI=SI+2,DI=DI+2
C.SI=SI-1,DI=DI-1
D.SI=SI-2,DI=DI-2

答案:D
解析:

第8题:

交换寄存器SI、DI的内容,正确的程序段是( )。

A.PUSH SI

B.PUSH SI PUSH DI PUSH DI POP SI POP DI POP DI POP SI

C.MOV AX,SI

D.MOV AX,SI MOV SI,AX MOV BX,DI MOV DI,BX XCHG BX,AX


正确答案:A

第9题:

下列四条指令中错误的是()。

  • A、MOV  AX,[SI]
  • B、MOV  AX,[DI]
  • C、MOV  AX,[SI+DI]
  • D、MOV  AX,[SI-10]

正确答案:C

第10题:

下列指令中合法的指令是()

  • A、MOV CX,SI
  • B、POP CL
  • C、MOV [SI+DI],AX
  • D、OUT 100H,AL

正确答案:A