一、 选择
1.下面指令执行后,改变AL寄存器内容的指令是(  D  )
A.TEST AL02H                      B.OR ALAL
C.CMP ALBL                        D.AND ALBL
2.对寄存器AX的内容乘以4的正确指令序列是(  B  )
A.SHR AX1 /SHR AX1          B.SHL AX1/ SHLAX1
C.ROL AX1 /ROL AX1          D.RCR AX1/ RCR AX1
3.设DS=8225HDI=3942H,指令NEG  BYTE PTR[DI]操作数的物理地址是(  A )
A.85B92H      B.86192H      C.BB690H      D.12169H
4.指令JMP FAR PTR DONE属于    C
  A.段内转移直接寻址
  B.段内转移间接寻址
  C.段间转移直接寻址
  D.段间转移间接寻址
5.将DX的内容除以2,正确的指令是   C
  ADIV 2   BDIV DX2   CSAR DX1   DSHL DX1
6.编写分支程序,在进行条件判断前,可用指令构成条件,其中不能形成条件的指令有( D    )
A.CMP        B.SUB          C.AND          D.MOV
7.下列指令执行后既能使AX=0同时又使CF=0,OF=0的是 A
A.XOR  AX,AX  B.AND  AX,AX  C.OR  AX,AX    D.TEST  AX,0
8.假设执行ADD汇编语言大小写字母转换指令后AX=006EH,再执行AAA指令,AX中的值是(  B 
A. 14H          B. 0104H          C. 74H          D. 04H
9.用MOV指令将十进制数89以非压缩BCD码格式存入AX,可使用的指令是(  D
A. MOV  AX89                  B. MOV  AX0809
C. MOV  AX89H              D. MOV  AX0809H
10.下列语句中能与“DA1 DB 32H34H”语句等效的是(    A )
A. MOV  DA132H                          B. MOV  DA132
C. MOV WORD PTR DA13234H                D. MOV WORD PTR DA1‘24’
  MOV  DA1+134H                          MOV  DA1+134 
11.设 NUM1 EQU 100
  NUM2 =64H  下面指令执行后,BL中全为1的指令是    D   
AMOV  BL,NUM1 GT NUM2  BMOV  BL,NUM1 LT NUM2
CMOV  BL,NUM1 NE NUM2    DMOV  BL, NUM1 EQ NUM2
12.下列语句中能实现留空8个字节单元的语句是(  D 
A. DA1 DT          B.DA2 DW    ?,?  C. DA3  DD          D.DA4  DQ 
13.在指令的操作数字段中,允许出现表达式,若BUF1BUF2均为变量名,下面指令中正确的是 D 。
AMOV  DX,BUF1*BUF2            BMOV  DX,BUF1/BUF2
CMOV  DX,(BUF1*BUF2)-BUF1      DMOV  DX,BUF2-BUF1
14.设有变量VAR和标号LAB,不正确的指令是  C 。
A.LEA  AX,VAR        B.LEA  AX,LAB
C.JMP NEAR PTR VAR  D.JMP SHORT LAB
15.一个有128个字的数据区,它的起始地址为12ABH00ABH,请给出这个数据区最末一个字单元的物理地址是  C 
  A12CSBH   B12B6BH   C12C59H   D12BFEH
16.在下列指令的表示中,不正确的是  C 
  AMOV AL[BX+SI]
  BJMP SHORT DONI
  CDEC [BX]
  DMUL CL
17.在进行二重循环程序设计时,下列描述正确的是 A 
  A.外循环初值应置外循环之外;内循环初值应置内循环之外,外循环之内
  B.外循环初值应置外循环之内;内循环初值应置内循环之内
  C.内、外循环初值都应置外循环之外
  D.内、外循环初值都应置内循环之外,外循环之内
18.条件转移指令JNE的测试条件为 A 
  AZF=0   BCF0   CZF=1   DCF=1
19.将DX的内容除以2,正确的指令是  C 
  ADIV 2   BDIV DX2   CSAR DX1   DSHL DX1
20.已知BX=2000HSI=1234H,则指令MOV AX[BX+SI+2]的源操作在()中。 
  A.数据段中偏移量为3236H的字节
  B.附加段中偏移量为3234H的字节
  C.数据段中偏移量为3234H的字节
  D.附加段中偏移量为3236H的字节
21.执行如下程序:
        MOV    AX0
        MOV    BX1
        MOV    CX100
    A    ADD    AXBX
        INC    BX
        LOOP    A
        HLT
    执行后(BX= C 
  A99   B100   C101   D102
22.上题的程序执行后(AX= B 
  A5000   B5050   C5100   D5150
23.在下列指令中,__D____指令的执行会影响条件码中的CF位。 
  AJMP NEXT       BJC NEXT
  CINC BX           DSHL AX1
24.下面指令序列执行后完成的运算,正确的算术表达式应是  D
    MOV    ALBYTE PTR X
    SHL    AL1
    DEC    AL
    MOV    BYTE PTR YAL
  Ay=x*2+1   Bx=y*2+1   Cx=y*2-1   Dy=x*2-1
25.没有语法错误的输入指令是 A 。
A.IN AL,30H   B.IN 30H,AL   C.IN DX,AL  D.IN AL,[BX]
26.在程序执行过程中,IP寄存器中始终保存的是  B 
  A.上一条指令的首地址
  B.下一条指令的首地址
  C.正在执行指令的首地址
  D.需计算有效地址后才能确定地址
二、简答
1.假定(DX=10111001B,(CL=3,(CF=1,试确定下列各条指令单独执行后,DX中的值。(3分)
    (1SHR DX1
    (2RCR DL1
    (3RCL DXCL
答:(1005CH200DCH305CCH 
28086中段的划分方式,以及最小段数目。
参考课本29
3.指出下列指令的错误原因。
1MOV  BX,AL              操作数类型不同   
2MOV  256,CX             
3POP  CS                       
4MUL  45H                     
5MOV  DS,2000H
6JMP  WORD PIR LOO       
7IN  AL,3F8H
4.某程序段如下:
MOV        DX0EFADH
            MOV        AX1234H
            MOV        CL4
            SHL        DXCL
            MOV        BLAH
            SHL        AXCL
            SHR        BLCL         
            OR        DLBL         
上面的程序段执行完后,DXAX的内容是什么?
DX=FAD0H
AX=2340H
、填空
1.计算机语言分为    机器      语言、    汇编      语言和    高级      语言。
223D=  10111    B100101011B=  12B  H
3.寄存器间接寻址 SI 的是默认段为DS BP默认段SS
48086 CPU内部共有      14        16      位的寄存器。
5.汇编语言源程序需要 经过编译 才能运行
6. 8086存储器地址分段时,每个段起始地址的特征是__20位地址的最后4位为0____
7.执行带符号数的运算,IMUL BL CF=1 OF=1表示该数 乘积的高8位不是低8位的符号位扩展而是有效数
8. 8086系统的操作数分为  立即操作数 寄存器操作数   存储器操作数  三种类型
四、程序分析
1.现有如下程序段:
    DATA    SEGMENT 
            ORG 0020H 
    DA1    DW    12H23H 
    DA2    DB    11H21H 
        DA3    EQU 1234H
        DA4    EQU $-DA2
        DA5    DB    31H32H
        DATA    ENDS
请回答:(1)该程序段已占有的存储字节数是多少?
    2)符号名DA4的值是多少?符号名DA5的值是多少?
    答:(1) 该程序段已占有的存储字节数是8个字节。   
        (2) 符号名DA4的值为2,符号名DA5的值是0026H 
2.
DA1 DB '345'
DA2 DB 3 DUP(0)
..
MOV SI,0
MOV CX,3
LOP: MOV AL,DA1[SI]
ADD AL,11H
OR AL,01H
MOV DA2[SI],AL
INC SI
LOOP LOP
试问:(1)程序段执行后,DA2各字节中的数据是         
答:注意该题首先得到 3’‘4’‘5’的asc 33h  34h 35h 然后在增加到44H 45H 46H 分别对应D E FASC码,然后再把这些字母的ASC码对应的二进制数的最低位置1,把最终的ASC码值存入DA2中,结果为  EEG
五、程序填空题
1.在表TABLE处存放着N个无符号字节数,求表中前10个字节数的总和并保存在AX寄存器中。如果总和值超过AX寄存器的容量,则置AX寄存器内容不变。请在程序中的空格处填入适当指令使其完整。
    LEA    BXTABLE 
    MOV    CX10 
    MOV    SUMAX 
    MEXT    1ADD AL,[BX] 
            ADC AH
            JNC DON
                2MOV AX,SUM
                JC END0
                DON    INC BX
                3LOOP NEXT
                  ENDO    HLT

版权声明:本站内容均来自互联网,仅供演示用,请勿用于商业和其他非法用途。如果侵犯了您的权益请与我们联系QQ:729038198,我们将在24小时内删除。