|  |  需要购买此门答案请加qq2762169544(微信:2762169544)
 
| 东 北 大 学 继 续 教 育 学 院 
 汇编语言程序设计  试 卷(作业考核 线上)  A  卷
 学习中心:           院校学号:            姓 名:
 
 (共    5   页)
 总分        题号        一        二        三        四        五        六        七        八        九        十
 得分
 
 一、单项选择题(从四个备选答案中选出一个正确的答案填在题干的括号内)(20分)
 
 (     )1. 指令MOV AL,[BX+100]的源操作数的寻址方式为?
 A. 基址寻址                                    B. 寄存器间接寻址
 C. 变址寻址                                    D.基址变址寻址
 (     )2.确定下列哪些数据在汇编语言中的表示是合法的?
 A. 2 AND 3*5                                        B. 138Q
 C. A3H                                                          D. HIGH AX
 (     )3.若栈顶指针SP的值为100H,当执行完指令PUSH AX后,SP的值为?
 A. 00FCH                                                   B. 0098H
 C. 00FEH                                              D. 0102H
 (     )4. 已知在寄存器 AX和 BX 中分别存放着一个无符号数据,在满足条件 AX≥BX 时转到标号OK去执行,不能实现该功能的程序段是?
 A. CMP  AX,BX                                         B. CMP  AX,BX
 JNB  OK                                                    JA    OK
 C. CMP  BX,AX                                         D. CMP  AX,BX
 JBE   OK                                            JNC   OK
 (     )5. 下列程序段在语法上是正确的是?
 A. X1  DB  ‘ABCD’                                B. X1  DW  ‘ABCD’
 C. X1  DD  ‘ABCD’                          D. X1  DB  1234H
 (     )6. 已知AL=67H,BL=34H, 则指令ADD AL,BL执行后,OF和CF的值分别为?
 A. 0,0                                                    B. 0,1
 C. 1,0                                                      D. 1,1
 (     )7. 已知AL,BL中各存放一个无符号数,计算AL/BL的商,用下述哪个程序段?
 A. DIV  BL                                          B. IDIV  BL
 C. CBW                                                        D. XOR  AH,AH
 DIV  BL                         DIV  BL
 (      ) 8. 已知SUBR是一个属性为NEAR的子程序, 下述调用SUBR子程序的指令序列中,哪一个能实现调用SUBR的目的?
 A. LEA SI,SUBR                                          B. MOV SI,SUBR
 CALL  [SI]                             CALL  SI
 C. MOV   BX, OFFSET SUBR            D. MOV   BX, OFFSET SUBR
 CALL  BX                                       CALL  WORD PTR[BX]
 (     )9. 初始化8259A时,ICW2的值为15H,当IR2端有中断请求时,8259A送出的中断方式码是什么?
 A. 17H                        B. 12H                        C. 13H                        D. 10H
 (     )10. 在两个8259A级联的中断系统中,从8259A连接在主8259A的IR3上,主8259A和从8259A的ICW3应设置为多少?
 A. 03H,08H                B. 08H,03H                C. 04H,03H                D. 08H,08H
 
 二、判断题(判断每题正误,对的在题后括号内划“√”,错的划“×”)。(10分)
 1. MOV  DS,CS        (   )    6. MOV  CS,AX         (   )
 2. MOV  AX,DL         (   )    7. XCHG 50H,BH        (   )
 3. POP  AL            (   )    8. SHL  AX,10         (   )
 4. NOT  5             (   )    9. IN   AL,DX         (   )
 5. IN   AX,200H      (   )     10. OUT  21H,AL        (   )
 
 三、填空题。(20分)
 1.        已知:BX=100H,BP=200H,SI=300H,DS=1000H,SS=2000H,CS=3000H,指出下述指令中存储器操作数的有效地址及实际地址。(6分)
 
 指      令        有效地址        实际地址
 MOV  AL,CS:[SI-100H]
 MOV  AL,[BP+10H]
 MOV  [BX+SI+100H],AL
 
 2. 写出下述两条数据定义伪指令语句经过汇编后的内存分配情况。(4分)
 DATA1  DB  -16,‘AB’
 DATA2  DW  -16,‘AB’
 
 DATA1                                          DATA2
 
 
 
 3. 已知部分中断向量表的内容给出如下, 则方式码为10H的中断服务程序的入口偏移地址为(        ),段地址为(         )。(4分)
 C>DEBUG
 -d 0:0
 0000:0000  9E 0F C9 00 65 04 70 00-16 00 C1 08 65 04 00 00
 0000:0010  65 04 70 00 54 FF 00 F0-00 80 00 F0 6F EF 00 F0
 0000:0020  00 00 00 C8 28 00 C1 08-6F EF 00 F0 6F EF 00 F0
 0000:0030  6F EF 00 F0 6F EF 00 F0-9A 00 C1 08 65 04 70 00
 0000:0040  07 00 70 C8 4D F8 00 F0-41 F8 00 F0 97 25 58 FD
 0000:0050  39 E7 00 F0 40 02 2D 06-2D 04 70 00 28 0A 76 06
 0000:0060  A4 E7 00 F0 2F 00 82 09-6E FE 00 F0 04 06 76 06
 0000:0070  1D 00 00 C8 A4 F0 00 F0-22 05 00 00 C6 57 00 C0
 
 4.依据下述子程序说明文件把子程序补充完整。(6分)
 1)子程序名:MSHL;
 2)子程序功能:多字节数据逻辑左移一位;
 3)入口条件:数据低字节地址在SI中,数据长度在CX中;
 4)出口条件:移后数据低字节地址在SI中;CF为移位前数据最高位状态;
 5)受影响的寄存器:F。
 MSHL        PROC
 PUSH        SI
 PUSH        CX
 (                                                                )
 MSHL1:        RCL        BYTE  PTR  [SI],1
 (                                                                )
 LOOP        MSHL1
 POP        CX
 POP        SI
 (                                                                )
 MSHL        ENDP
 
 四、改错题。(10分)
 下列程序有错, 请将它们找出并改正过来。已知程序欲完成的功能是从两个无符号数中选出较大者送入MAX单元, 若二者相同, 将MAX清0。
 要求:不必抄题,直接在试题上修改。在错误的部分下面划一条线,然后在本行的后面给出正确的答案即可。
 1.   SEGA   SEGMENT
 4.   DAX:   DW     A0H
 8.   DAY    DB     1000H
 12.  MAX           DB     0,0
 15.  SEGA   ENDS
 18.  CSEG   SEGMENT
 21.         ASSUME CS:CSEG;ASSUME DS:SEGA
 25.  BEGIN:MOV DS,SEGA
 27.        MOV AX,DAX
 29.         CMP AX, DAY
 33.         JG  XGY
 35.         JZ  ZERO
 40.         MOV AX,DAY
 43.  XGY:   MOV MAX,AX
 47.  ZERO   MOV AH,4CH
 49.        INT 21
 50.  CSEG   END
 56.         END START
 
 五、简答题(25分):用尽可能少的指令编写完成下列功能的程序段
 1.        将寄存器AL的高4位取反,低4位不变。
 
 
 
 
 2.将数据段SI指向的连续10个字节单元的内容传送到附加段DI开始的连续单元中。
 
 
 
 
 
 
 
 3.将寄存器AL的第i位清0,其它位状态不允许改变,已知i在CL中。
 
 
 
 
 
 
 
 4. 已知AL,BL中各存放一个带符号数,如果两数同正,则将AH清0;如果两数同负,则将AH置1;否则将AH置全1。
 
 
 
 
 
 
 
 
 
 
 
 
 5.已知中断服务程序的入口地址为SEVER,对应的中断方式码为40H,则将其入口地址写入中断向量表的程序段。
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 六、程序设计题。(15分)
 已知一组带符号字节数据存放在内存DATA开始的连续单元中,数据个数在CNT单元存放。编制程序求出该组数据的最大值,并将其存入MAX单元。
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 | 
 |