当前位置:文档之家› 《汇编语言程序的设计》期末复习试题_

《汇编语言程序的设计》期末复习试题_

一、填空题1.一个十进制数其对应的二进制数为、十六进制数为23H2.将 8存放在一个字单元中 , 则该单元中二进制代码是 0008H3.计算机软件分为两个部分即系统软件和应用软件而汇编程序属于系统软件 , 汇编语言应用程序属于应用软件4.把汇编语言源程序翻译成计算机能够识别、执行的目标程序的软件称为汇编程序8088 CPU内部一般用来存放数据的寄存器有 AX BX CX DX8088 CPU内部用来存放段地址寄存器的有 CS DS SS ES7.逻辑地址由段地址与偏移地址组成8.一个语句的名字项可以是标号或变量 , 在程序中它们两个在书写形式上的主要区别是标号以冒号结尾而变量不以冒号结尾9. 在 PSW 中 , 用以记录当前运算结果特征信息的那些位称为状态标志位 , 一般是由 CPU自动设置。

10.存储器单元与物理地址的关系是一一对应 ,在一个逻辑段内 , 每个单元对应的段地址是相同的 ,而偏移地址是不同的11.在 I/O接口中 , 为每个可访问的寄存器分配的地址是端口地址12.用以指示当前堆栈栈顶的指针寄存器是 SP13.机器指令是一组规定计算机的操作类型及相关操作数的二进制代码14. 假设执行指令前 BX=5678H, CL=8,指令 ROL BX, CL 执行后 BX 的内容是7856H15.一条指令的基本结构一般由操作码字段和操作数字段两个部分组成。

8088 存储器地址分段时,每个段起始地址的特征是二进制表示的地址中低四位都为 017.所谓“寻址方式”是指在指令中用以说明操作数所在地址或位置的方法18.在指令中直接给出操作数的寻址方式称为立即数寻址19.无符号数和带符号数的两组条件转移指令,每条指令都有完全等效的两个指令助记符,例如, JL 指令另一个指令助记符是 JNGE8088指令系统中 , 用以描述 (说明寄存器操作数的寻址方式是寄存器寻址方式21.设 MASK 为一个变量 , 在“ MOV AX,MASK[SI+BX]”指令中 , 源操作数的寻址方式是基址变址寻址方式执行“ JMP BX”指令只改变 2P 内容 ,而不改变 CS 内容。

23. 每次进行串扫描指令 SCAS 时,要进行递增或递减修改的变址寄存器是 DI24. 段间间接基址 BX 变址 SI 寻址的无条件转移指令是 JMP DW ORDPTR(BX+SI25.使用“ MUL BX”指令时 , 乘数放在 BX 中 , 被乘数放在 AX 中 , 执行该指令后结果在 DX-AX 中26. 执行带符号数字节相乘指令 IMUL BL后, CF=1, OF=1意味着乘积的高八位不是低八位的符号扩展27.在串操作指令中 , 使地址自动加 1或加 2必须使用指令 CLD 将方向标志DF 置源串必须在数据段中 , 而目的串必须在附加段中。

28.若要测试 AL 中操作数的第 0,1,2,7位是否为 0, 根据结果实现条件转移 , 可使用 TESTAL 87H指令。

8088 CPU允许最大的存储空间为 1MB, 因此 CPU 的地址总线是 20 位30. 与 LOOP yeqianyi指令功能等效的两条指令依次是 DEC CX 和 JNEyeqianyi31.将 AX 寄存器清零的逻辑指令是 AND AX,0 或 XOR AX,AX32. 在指令语句操作数项上,引用一个段名,就是获取段地址的立即数据33.执行查表指令 XLAT 时 , 要先将表地址存放在 BX 中 , 将位移量存放在AL34.十进制调整指令 DAA 或 AAA 必须放置在 ADD或 ADC 指令之后 , 只对AL 内容进行修正。

35. 假设执行前 AX=7862H,指令 XOR AX, AX 执行后 AX 中的值是 036.指令 CBW 只能实现对寄存器 AL 的内容进行扩展 , 而它当中存放的数据应该是一个带符号数。

37.比较两个带符号 A 与 B 的大小 , 若 (OF (SF=0,则 A-B >038.变量的类型属性指的是该变量对应存储单元的字节数39. VAR1 DD 10H DUP(语句实现留空 40 个字节单元。

40.在源程序中定义一个逻辑段 , 使用 SEGMNT 语句表示一个段的开始 , 用语句表示一个段的结束。

41.汇编语言源程序中的语句有三种类型 , 它们是宏指令语句 , 指令语句及伪指令语句DB 0, 2 DUP(1, 2 , 0, 3汇编时生成的数据依次是 0,1,2,1,2,0,3 43.在指令语句和伪指令语句中常用符号 $ 表示地址计数器的当前值。

44.指令 MOV AX, SEG BUF的执行,是把 BUF的段地址送到 AX 中。

45. 用 DW 1200H 语句定义的一个字 , 如改用 DB 语句定义时 , 该语句是DB 00H, 12H45.如果过程与调用的主程序处在同一代码段 , 这样的过程属性是 NEAR ,与调用它的主程序处于不同的代码段 , 则该过程属性是 FAR47.在数据段或代码段中 , 常用伪指令“ ORG n” 来定义本段的偏移地址初值 , 该初值的范围是 0000H-0FFFFH48.在存储单元 yeqianyi 开始 , 欲保留 100个字长的存储单元 , 应使用的数据定义伪指令是 yeqianyi Dw100 Dup(49. 在存取一个存储器操作数时,段地址必须由段寄存器提供。

二、选择题1. 能够将目标模块或子程序连接起来 , 生成可执行文件的系统程序是 2DEBUG LINK ● MASM ❍ EDIT2. 用汇编语言编写的程序称为 2汇编程序源程序●可执行文件❍目标程序3. 汇编语言源程序文件的扩展名为 44. 设 (101 x =(4116求 x= 36 10 ● 8 ❍ 25. 内存某字节单元中存放的二进制代码为 94H, 若将它看作是一个压缩 BCD 码 , 则其对应的数值为 4148 -20 ● -108 ❍ 946. 当执行 ADD AX, BX 指令后,若 AX 的内容为 4E52H 时,设置的奇偶标志位PF=0,下面的叙述正确的是 4① 表示结果中含 1的个数是奇数② 表示结果中含 1的个数是偶数③ 表示该数是奇数④ 表示结果中低 8位中含 1的个数是奇数 7. 要输入端口 1234H 中的 8位数据,其指令应是 2① MOV DX,1234H ② MOV DX,1234HOUT DX,AL IN AL,DX③ IN AX,1234H ④ OUT DX,1234H8. 下列寄存器组中,在访问存储器操作数地址时,可以提供偏移地址的是 1 ① BP、 BX 、 SI 、DI ② AX、 BX 、 CX 、 DX③ SP、IP ④ BX、 SI 、 DI 、 DS9. IBM PC机的存储器单元的物理地址是用 2 表示的。

① 5位十进制数② 20位无符号二进制数③ 4位十六进制数④ 20位带符号二进制数10. 能够与 SS 寄存器组合形成堆栈区物理地址的寄存器是 2① BX ② BP ③ IP ④ SI11. 若 AX=-15要得到 AX=15应执行的指令是 1① NEG AX ② NOT AX③ INC AX ④ DEC AX12. 取指令的物理地址表达式为 4① (DS×10H+(BX ② (SS×10H+(SP③ (ES×10H+(SI ④ (CS×10H+(IP13. 可以作为一个段的起始地址的是 3① 21002H ② 00104H ③ 01000H ④ F0008H14. 在标志寄存器 FLAGS 中 , 用以记录当前运算结果是否为零的标志是 4① CF ② OF ③ SF ④ ZF8088对 I/O端口寻址范围是 3① 16KB ② 32KB ③ 64KB ④ 1MB8088系统执行传送指令 MOV 时 1③ 影响 SF 符号标志④ 影响 CF 进位标志17. 设物理地址 (21000H=20H,(21001H=30H,(21002H=40H, 如从地址 21001H 中取出一个字的内容是 4① 2030H ② 3040H ③ 3020H ④ 4030H18. 若内存中有 100个字节数据区 , 其首地址为 10210H, 那么其最末一个字节单元的地址是 3① 10274H② 10310H ③ 1021H:0063H ④ 1021H:0064H19. 假设存储器中从 7462H 单元开始的四个相邻字节单元中的内容依次是32H , 46H , 52H , OFEH ,则存放字数据 0FE52H 的字地址是 3① 7462H ② 7463H ③ 7464H ④ 7465H20. 将 -1存入 AX 中 , 其内容为 1① FFFFH ② -0001H ③ FFH ④ 8001H21. 在段内寻址时 , 可以提供偏移地址的寄存器组是 2① AX,BX,CX,DX ② BX,BP,SI,DI③ SP,BP,SI,DI ④ DS,ES,CS,SS22. 将 AX 的内容存入堆栈正确的指令是 3① MOV [SP],AX ② POP AX③ PUSH AX ④ MOV SS:[SP],AX23. MOV AL,79ADD AL,0B1H上面指令执行后 , 设置的标志位 CF 和 OF 的值是 4① CF=0,OF=1 ② CF=1,OF=1③ CF=0,OF=0 ④ CF=1,OF=024. 能够将 BL 的低四位清“ 0”的指令是 1① AND BL,0F0H ② OR BL,00H③ OR BL,0F0H ④ AND BL,00H25. 已知 AX 、 BX 中均为带符号数,当进行字相除时,下面指令或指令序列正确的是2 ① DIV BX ② CWDIDIV BX③ XOR DX,DX ④ CBWDIV BX IDIV BX26. 没有语法错误的输入指令是 1① IN AL, 30H ② IN 30H, AL③ IN DX, AL ④ IN AL, [BX]27. 设 (AL=63H (BL=29H 执行下面指令后DASAX的内容是 3① (AX=0304H ② (AX=0034③ (AX=0034H ④ (AX=030428. 算术右移指令 SAR 和逻辑右移指令 SHR ,两条指令执行结果完全相同的条件是1 ① 目的操作数最高位为0 ② 目的操作数最高位为 1③ 目的操作数为任意情况④ 无论什么情况都不可能完全相同29. 设 OP1、 OP2是变量 , 下面哪条指令是非法的 2① CMP AX,OP1 ② CMP OP1,OP2③ CMP BX,OP2 ④ CMP OP,0FFH30.在执行十进制调整指令前 , 必须先把需要调整的数送入 1① AL ② AX ③ DL ④ DX31. 下列指令中操作数在代码段中的是 1① MOV EAX,123400FEH ② ADD EBP,EAX③ SUB [BX],DI ④ INC WORD PTR[BX]32. 设 AL=0A8H, CL=23H,执行乘法指令 MUL CL后,标志位 OF , CF 的值分别是1 ① OF=1, CF=1 ② OF=1, CF=0③ OF=0, CF=1 ④ OF=0, CF=033. 设 DF=0, SI=20H, CX=10,执行 REP LODSW指令后, SI 中的内容是 3① 20H ② 30H ③ 34H ④ 40H34. 在串操作指令中 , 使用重复操作前缀不正确的是 2① REP MOVSB ② REP LODSB③ REP STOSB ④ REPNZ SCASB35. 设有变量 VAR 和标号 LAB ,不正确的指令是 3① LEA AX, VAR ② LEA AX, LAB③ JMP NEAR PTR VAR ④ JMP SHORT LAB36. 指令 CALL DWORD PTR VALUE 属于 4 寻址方式。

相关主题