niusouti.com
更多“执行下面的指令序列后,AX寄存器中的内容是( )。 MOV AX,'8' MOV AL,'9' AAAA.0017HB.0 ”相关问题
  • 第1题:

    若定义DATDB '1234',执行指令MOV AX,WORD PTR DAT后,AX寄存器中的内容是

    A.1234H

    B.3412H

    C.3132H

    D.3231H


    正确答案:D
    解析:该题考查考生对汇编指令的理解。因为AX是16位的,可以存放两个字节,所以语句“MOV AX,WORD PTR DAT”将数据DAT的前两个字节(即12)传送到 AX中,进入AX又是先低字节后高字节的顺序,读出的时候又是先高字节后低字节,所以应该选择D。

  • 第2题:

    下列8086/8088指令中,执行速度最快的是( )。

    A.MOV AX,BX

    B.MOV AX, 1516H.

    C.MOV BYTE PTR [BX],26H

    D.MOV [2000H],AL


    正确答案:A
    解析:通用数据传送。注意,①两个段寄存器之间不能直接传送数据;②两个储存单元之间不能直接传送数据(可以用MOVS):两个操作数中必须有一个是寄存器或立即数:③立即数和段寄存器CS不能作为目的操作数。

  • 第3题:

    有下列指令: MOV AX,1234H MOV CL,4 ROL AX,CL DEC AX MOV CX,4 MUL CX HLT 执行这些指令后,寄存器AL的值是( )

    A.60H

    B.00H

    C.04H

    D.AOH


    正确答案:B
    解析:在本题中,开始时AX寄存器中的内容是1234H,经过ROLAX,CL命令后,AX=2341H。ROL是循环左移。然后再DECAX后,AX=2340H。MUL是乘法指令,它隐含了目的操作数AX,乘积为DX:AX。所以执行完MULCX指令后,AX=8D00H。那么AL的值是00H。

  • 第4题:

    根据下面的指令和伪指令序列,AX寄存器的内容是______。 TAB DW 1,2,3,4,5,6 ENTRY EQU 3 MOV BX,OFFSETTAB ADD BX,ENTRY MOV AX,WORDPTR[BX]

    A.0403H

    B.0003H

    C.0506H

    D.0300H


    正确答案:D
    解析:本题中的伪指令将其后跟着的数据存入指定的存储单元。程序段中BX寄存器所存放的偏移地址指向TAB中01H,00H,02H,00H,03H,00H,……的第3个,00H所示的存储单元。所以AX寄存器中的内容为0300H。

  • 第5题:

    执行下面的指令序列后,AX寄存器中的数据是( )。 MOV AX,1234H MOV BX,4 MUL BX,

    A.4936H

    B.48DOH

    C.2340H

    D.0234H


    正确答案:B

  • 第6题:

    执行下面指令序列后,MOV AL,82H/CBW,结果是()。

    • A、AX=0FF82H
    • B、AX=8082H
    • C、AX=0082H
    • D、AX=0F82H

    正确答案:A

  • 第7题:

    指出下列指令中源操作数的寻址方式,并说明指令操作的结果。 (1)MOV  BX, ‘BC’  (2)MOV  AX, DATA  (3)MOV  DX, [BX]  (4)MOV  AL, [BX+DI]  (5)MOV  CL, LIST[BX]  (6)MOV  AX, FILE[BX+DI+200H]  (7)DAA  (8)XLAT  (9)IN  AX, DX  (10)INT  21H


    正确答案: (1)立即寻址。操作结果是把ASCII码CB(4342H)传送到BX.
    (2)使用AX的直接寻址。操作结果是把数据段存储单元DATA1与DATA1+1的字内容复制到AX中。
    (3)寄存器间接寻址。把数据段由BX间接寻址的存储单元的字内容复制到DX中。
    (4)基址加变址寻址的寻址方式。操作结果是把由BX+DI寻址的数据段存储单元的字的内容复制到AL。
    (5)寄存器相对寻址。操作结果是把数据段由LIST+BX寻址的字节内容送CL。
    (6)相对基址加变址的寻址方式。操作结果是把由BX+DI+200H寻址的数据段存储单元的字内容送入AX。
    (7)源操作数为寄存器(AL)寻址。它是把AL中的两位BCD码加法运算的结果调整为两位压缩型十进制数,仍保留在AL中。
    (8)源操作数为寄存器(BX)相对寻址。操作结果是把由BX+AL指定的内容表格中的字节代码内容送AL。
    (9)源操作数为寄存器(DX)间接寻址。它是把DX和DX+1所指定的两个端口地址的字的内容送入AX。
    (10)源操作数为直接寻址,直接寻址地址为21H×4, 21H×4+2。操作结果是把21H×4~21H×4+3内存单元中的双字分别送到IP与CS。

  • 第8题:

    已知指令序列为: MOV AX,0FFBDH MOV BX,12F8H IDIV BL 此指令序列执行后,(AX)等于多少?(BX)等于多少?


    正确答案:(AX)=0308H,(BX)=12F8H

  • 第9题:

    执行下面指令序列后,结果是()。 MOV AL,82H CBW

    • A、(AX)=0FF82H
    • B、(AX)=8082H
    • C、(AX)=0082H
    • D、(AX)=0F82H

    正确答案:A

  • 第10题:

    判断下列指令是否正确。若不正确,指出错误原因。  (1)MOV AX, [EBX]  (2)MOV SI, DL  (3)MOV EBP, [ESP][EAX*3] (4)LEA AX, 3006H   (5)MOV [BP][DI], 0    (6)MOV [SI], [DI]   (7)MOV ES, 1000H   (8)MOV AX, X+2  (9)MOV AX, CX+2    (10)MOV [EAX][EAX*2], AL 


    正确答案: (1)指令MOV AX, [EBX]是正确的。
    (2)指令MOV SI, DL是错误的,两个操作数类型不匹配。
    (3)指令MOV EBP, [ESP][EAX*3] 是错误的,比例因子不能为3。
    (4)指令LEA AX, 3006H是错误的,LEA指令的源操作数必须为内存操作数。
    (5)指令MOV [BP][DI], 0是错误的,操作数类型无法确定。
    (6)指令MOV [SI], [DI] 是错误的,不能同时出现两个内存操作数。
    (7)指令MOV ES, 1000H是错误的,装载段寄存器时,源操作数不能为立即数。
    (8)如果“X”是用常数表达式定义的符号(例如:X   EQU   5+6),或者是用“DW”定义的内存变量,指令MOV AX, X+2是正确的。否则这条指令是错误的。
    (9)指令MOV AX, CX+2是错误的,源操作数表达式CX+2不是一个可以直接计算的“常数表达式”。
    (10)指令MOV [EAX][EAX*2], AL是正确的。

  • 第11题:

    完成同指令XCHG AX,BX相同功能的指令或指令序列是()。

    • A、MOV AX,BX
    • B、MOV BX,AX
    • C、PUSH AX POP BX
    • D、MOV CX,AX MOV AX,BX MOV BX,CX

    正确答案:D

  • 第12题:

    问答题
    指出下列指令中源操作数的寻址方式,并说明指令操作的结果。 (1)MOV  BX, ‘BC’  (2)MOV  AX, DATA  (3)MOV  DX, [BX]  (4)MOV  AL, [BX+DI]  (5)MOV  CL, LIST[BX]  (6)MOV  AX, FILE[BX+DI+200H]  (7)DAA  (8)XLAT  (9)IN  AX, DX  (10)INT  21H

    正确答案: (1)立即寻址。操作结果是把ASCII码CB(4342H)传送到BX.
    (2)使用AX的直接寻址。操作结果是把数据段存储单元DATA1与DATA1+1的字内容复制到AX中。
    (3)寄存器间接寻址。把数据段由BX间接寻址的存储单元的字内容复制到DX中。
    (4)基址加变址寻址的寻址方式。操作结果是把由BX+DI寻址的数据段存储单元的字的内容复制到AL。
    (5)寄存器相对寻址。操作结果是把数据段由LIST+BX寻址的字节内容送CL。
    (6)相对基址加变址的寻址方式。操作结果是把由BX+DI+200H寻址的数据段存储单元的字内容送入AX。
    (7)源操作数为寄存器(AL)寻址。它是把AL中的两位BCD码加法运算的结果调整为两位压缩型十进制数,仍保留在AL中。
    (8)源操作数为寄存器(BX)相对寻址。操作结果是把由BX+AL指定的内容表格中的字节代码内容送AL。
    (9)源操作数为寄存器(DX)间接寻址。它是把DX和DX+1所指定的两个端口地址的字的内容送入AX。
    (10)源操作数为直接寻址,直接寻址地址为21H×4, 21H×4+2。操作结果是把21H×4~21H×4+3内存单元中的双字分别送到IP与CS。
    解析: 暂无解析

  • 第13题:

    下列指令序列执行后,AL寄存器中的内容为【 】。

    MOV AL,1

    SAL AL,1

    MOV BL,AL

    SAL AL,1

    SAL AL,1

    ADD AL,SL


    正确答案:10
    10

  • 第14题:

    执行完下列指令后: MOV AX,1234H MOV CL,4 ROL AX, CL DEC AX MOV CX,4 MUL CX HLT (AL)=( )。

    A.60H

    B.00H

    C.04H

    D.A0H


    正确答案:B

  • 第15题:

    执行下列指令后,AX寄存器中的数据是( )。 MOV CX,5 MOV AX,50 NEXT: SUB AX,CX LOOP NEXT HLT

    A.0

    B.5

    C.45

    D.35


    正确答案:D

  • 第16题:

    根据下面的指令和伪指令序列 TAB DW 1,2,3,4,5,6 ENTRY EQU 3 MOV BX,OFFSET TAB ADD BX,ENTRY MOV AX,WORD PTR [BX] AX寄存器的内容是( )

    A.0300H

    B.0003H

    C.0506H

    D.0403H


    正确答案:A
    解析:根据数据定义伪指令TABDW1,2,3,4,5,6画出内存分配示意图,在存储单元相应位置标出变量名和EA。OFFSETTAB得到的是变量TAB的EA。TAB这个变量的EA为0则MOVBX,OFFSETTAB这个指令的源操作数OFFSETTAB是立即寻址,(BX)=0。ENTRY为符号常量,指令ADDBX,ENTRY的源操作数ENTRY也是立即寻址(BX)+3→BX,(BX)=3。MOVAX,WORDPTR[BX]指令中源操作数[BX]是寄存器间接寻址,前面的WORDPTR指明内存操作数为字类型。指令执行后把偏移地址为3的字单元的内容传给AX。所以答案选A。

  • 第17题:

    执行下面的指令序列后,AX寄存器中的数据是( )。 MOV AX,1234H MOVBX,4 MUL BX

    A.4936H

    B.48DOH

    C.2340H

    D.0234H


    正确答案:B

  • 第18题:

    指出下列指令中哪些是错误的,错在什么地方。  (1)MOV DL,AX  (2)MOV 8650H,AX  (3)MOV DS,0200H  (4)MOV [BX],[1200H]  (5)MOV IP,0FFH  (6)MOV [BX+SI+3],IP  (7)MOV AX,[BX][BP]  (8)MOV AL,ES:[BP]  (9)MOV DL,[SI][DI]  (10)MOV AX,OFFSET 0A20H  (11)MOV AL,OFFSET TABLE  (12)XCHG AL,50H  (13)IN BL,05H  (14)OUT AL,0FFEH


    正确答案:(1)长度不匹配
    (2)立即数不能做目的操作数
    (3)段寄存器不能用立即数赋值
    (4)两个内存单元不能直接传送数据
    (5)IP 不能用指令直接修改
    (6)指令中不能出现 IP
    (7)BX/BP 应与 SI/DI 搭配
    (8)正确
    (9)SI/DI 应与 BX/BP 搭配
    (10)OFFSET 后应跟内存单元
    (11)偏移地址为16 位,AL 长度不够
    (12)立即数不能用于XCHG
    (13)IN 必须用 AL/AX
    (14)操作数顺序反向;地址应为 8 位

  • 第19题:

    指出以下指令中,哪些指令是非法的,并说明为什么(8086系统)。 (1) PUSH 1234H (2) MOV CS,AX (3) IN AX, 300 (4) MOV AX,[DX+12] (5) MOV BX,[BX] (6) MOV DS,1000H (7) XCHG AL,AL (8) MOV AL,100H (9) MOV DX,AL (10)LEA BL,[BX+5] (11)LEA DX,BX (12)MOV [1000H],12H (13)ADD AX,DS (14)SUB [0100H],BYTE PTR [0001] (15)SHL BL,2 (16)SHR CL,CL (17)MUL AL,BL (18)INT 400


    正确答案: (1)非法,8086系统不允许PUSH指令的操作数为立即数;
    (2)非法,MOV指令中CS不能作为目的操作数;
    (3)非法,端口号大于0FFH;
    (4)非法,DX不能出现在中括号[]内;
    (5)合法;
    (6)非法,不能把立即数赋给段寄存器;
    (7)合法;
    (8)非法,源操作数大于0FFH,不能赋给8位寄存器AL;
    (9)非法,源操作数是8位寄存器,目的操作数却是16位寄存器,不匹配;
    (10)非法,LEA指令得到的是16位偏移量,但目的操作数是8位寄存器;
    (11)非法,LEA指令的源操作数只能是存储器操作数;
    (12)非法,指令存在歧义,无法确定传送的是字节还是字;
    (13)非法,段寄存器不能参与算术运算;
    (14)非法,源和目的寄存器不能同为存储器操作数;
    (15)非法,在8086系统中,移位次数大于1时需要将移位次数存放到CL中;
    (16)合法;
    (17)非法,在8086系统中MUL指令没有双操作数的用法;
    (18)非法,中断类型号大于0FFH。

  • 第20题:

    下列MOV指令中,不正确的指令是()。

    • A、MOV AX,BX
    • B、MOV AX,[BX]
    • C、MOV AX,CX
    • D、MOV AX,[CX]

    正确答案:D

  • 第21题:

    下列指令的源操作数段基址在哪个段寄存器中? (1)MOV  AX, [BP][SI]  (2)MOV  AX, CS:8[DI]   (3)MOV  AX, 2[EBP*1]  (4)MOV  AX, FS:4[ESP]  (5)MOV  AX, 2[EBP][EAX]  (6)MOV  AX, [ECX][EBP*4]  (7)MOC  AX, [EDX][EBP]  (8)MOV  AX, ES:10[EBP][EAX*2]


    正确答案: 各指令源操作数段基址使用的段寄存器如下:
    (1)SS
    (2)CS
    (3)SS
    (4)FS
    (5)SS
    (6)DS
    (7)DS
    (8)ES

  • 第22题:

    已经定义数据段如下: DATASEGMENT NUM=56 X DB NUM Y DB 27 Z DW 148 DATAENDS 指出下列指令中的错误: (1)MOV Y,X (2)MOV BL,04B8H (3)MOV AL,Z (4)MOV [BX],3 (5)MOV [BX],[DI] (6)MOV DS,DATA (7)MOV NUM,AX (8)MOV ES,DS (9)MOV AX,FLAGS (10)MOV CS,AX


    正确答案: (1)指令MOV Y,X同时出现了两个存储器操作数。
    (2)指令MOV BL,04B8H操作数类型不匹配(04B8H是16位立即数,BL是8位寄存器)。
    (3)指令MOV AL,Z操作数类型不匹配(Z是16位操作数,BL是8位寄存器)。
    (4)指令MOV [BX],3操作数类型不能确定。
    (5)指令MOV [BX],[DI]出现了两个存储器操作数。
    (6)指令MOV DS,DATA不能把立即数装入段寄存器。
    (7)指令MOV NUM,AX立即数不能用作目的操作数。
    (8)指令MOV ES,DS不能在段寄存器之间直接传输。
    (9)指令MOV AX,FLAGS中,FLAGS寄存器只能隐含在少量指令中使用。
    (10)指令MOV CS,AX中,CS寄存器不能用作目的操作数。

  • 第23题:

    问答题
    下列指令的源操作数段基址在哪个段寄存器中? (1)MOV  AX, [BP][SI]  (2)MOV  AX, CS:8[DI]   (3)MOV  AX, 2[EBP*1]  (4)MOV  AX, FS:4[ESP]  (5)MOV  AX, 2[EBP][EAX]  (6)MOV  AX, [ECX][EBP*4]  (7)MOC  AX, [EDX][EBP]  (8)MOV  AX, ES:10[EBP][EAX*2]

    正确答案: 各指令源操作数段基址使用的段寄存器如下:
    (1)SS
    (2)CS
    (3)SS
    (4)FS
    (5)SS
    (6)DS
    (7)DS
    (8)ES
    解析: 暂无解析