1、第 1 章 微型计算机系统一.选择1. 计算机的发展阶段通常是按计算机所采用的( )来划分的。A.内存容量 B.电子器件 C.程序设计 D.操作系统2. 一个完整的计算机系统通常应包括( ) 。A、系统软件和应用软件 B、计算机及其外部设备C、硬件系统和软件系统 D、系统硬件和系统软件3. BIOS 是“基本输入输出系统” ,在现代的微机系统中, BIOS 中代码( ) 。A.是不能升级的 B. 是可以升级的C.更换 BIOS 芯片后才可以升级 D. 以上说法都不正确4. 以下有关 CPU 的说法不正确的是( ) 。A. CPU 也称作运算控制单元 B. CPU 也称作微处理器C. CPU 是
2、微型机的核心部件。 D. CPU 也称作运算处理单元5. 冯诺依曼计算机的基本思想主要是指( ) 。A. 二进制编码和存储程序控制 B. 二进制数和存储器C. CPU 和存储器 D. 存储器和输入输出设备6. 冯诺依曼计算机的硬件由( )大基本部件组成。A. 3 B. 4 C. 5 D. 67. 冯诺依曼计算机的硬件由( )等大基本部件组成。A. 运算器、控制器、存储器和输入输出设备 B. 寄存器、运算器、控制器、存储器 C. 寄存器、CPU 和存储器 D. 存储器和输入输出设备8. 在现代的微机系统中,描述 CPU 主频常用的单位是( ) 。A. Hz B. KHz C. MHz D. GH
3、z9. 在现代的微机系统中,描述内存容量常用的单位是( ) 。A. B B. KB C. MB D. GB10. 微型计算机和各个外部设备之间用( )连接起来,再配上软件,就构成了微机系统。A. 系统总线 B通信总线C数据总线 D片内总线11. 所谓微机的字长是指( ) 。A. CPU 内部数据总线的位数。B. CPU 外部数据总线的位数。C. CPU 地址总线的位数。 D. CPU 中运算器一次能处理二进制数的最大位数。12. ( )是以 CPU 为核心,加上存储器,I/O 接口和系统总线构成的.A.微处理器 B.微型计算机 C.微型计算机系统 D.计算机.13. 微型计算机是以超大规模集成
4、电路为主要部件,以集成了控制器和( )的微处理器为核心,所构造出的计算机A存贮器 B寄存器 C运算器 D计数器14. 存储器是计算机系统的记忆设备,它用来( )A存放数据 B存放程序 C存放数据和程序 D存放微程序15. 通常所说的 32 位计算机是指( )。ACPU 字长为 32 位 B通用寄存器数目为 32 个C可处理的数据长度为 32 位 D地址总线的宽度为 32 位解答:1. B2. C3.4.5.6.7.8.9.10.11.12.13.14.15.二.判断1. 软件与硬件的等价性原理说明软硬件在功能、性能和成本等方面是等价的。2. IA-64 结构是 IA-32 结构的 64 位扩展
5、,也就是 Intel 64 结构。3. 8086 的数据总线为 16 位,也就是说 8086 的数据总线的个数、或说条数、位数是 16。4. 微机主存只要使用 RAM 芯片就可以了。5. 处理器并不直接连接外设,而是通过 I/O 接口电路与外设连接。6. 处理器是微机的控制中心,内部只包括 5 大功能部件的控制器。7. Windows 的模拟 DOS 环境与控制台环境是一样的。8. 16 位 IBM PC/AT 机采用 ISA 系统总线。9. IA-32 处理器吸取了 RISC 技术特长。RISC 是指复杂指令集计算机。10. 处理器进行读操作,就是把数据从处理器内部读出传送给主存或外设。11
6、. IA-32 处理器上不能运行 Linux。12. IA-32 处理器地址总线是双向的。13. BIOS 是“基本输入输出系统” ,在现代的微机系统中,BIOS 是不能升级的。14. 汇编语言就是机器语言的符号化。15. 汇编语言程序就是汇编程序。解答:1.2.3.4.5.6.7.8.9.10.11.12.13.14.15.三.填空1. .CPU 是英文_的缩写,中文译为_。2. Intel 8086 支持_容量主存空间,80486 支持_容量主存空间。3. .二进制 16 位共有_个编码组合,如果一位对应处理器一个地址信号, 16 位地址信号共能寻址_容量主存空间。4. DOS 主要支持两
7、种可执行文件,它们的扩展名分别是 _和_。5. 关于总线的英文缩写 ISA 原文是_, PCI 原文是 _。6. Windows 的文件夹对应的专业术语是_ ,英文是 _。7. Pentium 系列处理器的多媒体指令有_,SSE,SSE2 和_ 类指令。8. Pentium 处理器采用_位数据总线,_位地址总线与主存相连。9. 最初由_公司采用 Intel 8088 处理器和_ 操作系统推出 PC 机。10. 当前 32 位 PC 机主要采用_总线连接 I/O 接口电路卡,键盘、鼠标等则采用_总线连接。11. 描述 CPU 的主要技术参数有_ ,_,集成度等。12. 系统总线一般可分为地址总线
8、,_ 和_。13. 在计算机系统的层次结构中,汇编语言位于第 层,而高级语言位于第 层。14. 在计算机系统的层次结构中,操作系统位于第 层,而机器语言位于第 层。15. 在计算机系统的层次结构中,数字电路位于第 层,而用户位于第 层。解答:1.2.3.4.5.6.7.8.9.10.11.12.13.14.15.四.简答题1. 计算机字长指的是什么?2. 简述微型计算机系统的硬件组成及各部分作用。3. ROM-BIOS 是什么?4. 什么是通用微处理器、单片机?5. 什么是 DSP 芯片、嵌入式系统?6. 冯诺依曼计算机的基本设计思想是什么?7. 计算机系统通常划分为哪几个层次?普通计算机用户
9、和软件开发人员对计算机系统的认识一样吗?8. 什么是系列机和兼容机?解答:1.2.3.4.5.6.7.8.五.名词解释解答:六.应用题解答:第 2 章 处理器结构一.选择1. 一条计算机指令中规定其执行动作的部分称为( ) 。A. 源地址码 B. 操作码 C. 目标地址码 D. 数据码2. 标志寄存器中的溢出标志 OF=1 时表示的含义,下列说法中正确的是 。A. 表示运算结果溢出 B. 表示最高位有进位C. 两个符号位相同的操作数的运算结果的符号位与参与运算的操作数符号位相反D. 以上说法都不对3. VAR 是数据段中定义的字变量,指令 MOV VAREBXEDI,AX 中目的操作数的寻址方
10、式是( ) 。A寄存器相对寻址 B直接寻址C相对基址变址寻址 D间接寻址4. VAR 是数据段中定义的字变量,指令 MOV AX,VAREBX中源的操作数的寻址方式是( ) 。A寄存器相对寻址 B直接寻址C相对基址变址寻址 D间接寻址5. VAR 是数据段中定义的字变量,指令 MOV AX,VAR 中源的操作数的寻址方式是( ) 。A寄存器相对寻址 B直接寻址C相对基址变址寻址 D寄存器间接寻址6. 下列 80X6CPU 标志寄存器的标志位中,不属于状态标志位的是( )A.OF B.IF C.AF D.PF7. 下列 80X6CPU 标志寄存器的标志位中,不属于状态标志位的是( )A.OF B
11、.TF C.AF D.PF8. 计算机能直接识别、理解和执行的程序是 ( )。A汇编语言程序 B机器语言程序C高级语言程序 D数据库语言程序9. 寄存器( )不能被分割为高字节和低字节。A.AX B. DX C.BX D. CS10. VAR 是数据段中定义的字变量,指令 MOV EBX,OFFSET VAR 源操作数的寻址方式是( ) 。A.直接寻址 B.寄存器间接寻址 C.立即数寻址 D.存贮器寻址11. 当使用 EBP 寄存器作基址寻址时,默认在( )段内寻址。A.代码 B.堆栈 C.数据 D.附加12. 当使用 EDI 寄存器作基址寻址时,默认在( )段内寻址。A.代码 B.堆栈 C.
12、数据 D.附加13. 运算器由很多部件组成,其核心部分是( ) 。A.数据总线 B.算术逻辑单元 C.累加器 D.多路开关14. IA-32 处理器在保护模式下可以直接访问最大物理地址空间是( ) 。A. 1MB B. 64KB C. 4GB D. 4TB15. IA-32 处理器在复位后自动进入( )方式。A. 保护 B. 实地址 C. 系统管理 D. 虚拟 8086解答:1.2.3.4.5.6.7.8.9.10.11.12.13.14.15.二.判断1. 程序计数器 PC 或指令指针 EIP 寄存器属于通用寄存器。2. 处理器的指令译码是将指令代码翻译成它代表的功能的过程,与数字电路的译码
13、器是不同的概念。3. EAX 也被称为累加器,因为它使用最频繁。4. 处理器的传送指令 MOV 属于汇编语言的执行性语句。5. 汇编语言的语句由明显的 4 部分组成,不需要分隔符区别。6. 80 减 90(8090)需要借位,所以执行结束后,进位标志 CF1。7. MASM 汇编语言的注释用分号开始,但不能用中文分号。8. IA-32 处理器在实地址方式下,不能使用 32 位寄存器。9. 存储器寻址方式的操作数当然在主存了。10. 保护方式下,段基地址加偏移地址就是线性地址或物理地址。11. IA-32 处理器中的 8 个 32 位通用12. 寄存器变量的存取速度远高于内存变量。13. 指令中
14、的目的操作数可以采用立即寻址方式。14. 指令中的源操作数与目的操作数的寻址方式不能同为内存寻址方式。15. 不能用 EBX 作为基址指针访问堆栈段中的数据。解答:1.2.3.4.5.6.7.8.9.10.11.12.13.14.15.三.填空1. 寄存器 EDX 是_位的,其中低 16 位的名称是 _,还可以分成两个 8位的寄存器,其中 D8D15 部分可以用名称_表示。2. IA-32 处理器的段寄存器是_位的,指令指针 EIP 是_位的。3. 逻辑地址由_和_两部分组成。4. 进行 8 位二进制数加法:10111010 01101100 ,8 位结果是_,标志CF_。5. 在实地址工作方
15、式下,逻辑地址“7380H400H”表示的物理地址是_,并且该段起始于_物理地址。6. IA-32 处理器有 8 个 32 位通用寄存器,其中 EAX,_ ,_和 EDX,可以分成 16 位和 8 位操作。7. IA-32 处理器复位后,首先进入是_工作方式。该工作方式分段最大不超过_。8. MASM 要求汇编语言源程序文件的扩展名是_,汇编产生扩展名为 OBJ 的文件被称为_文件。9. 除外设数据外的数据寻址方式有 3 类,分别被称为立即数寻址、 _和_。10. 用 EBX 做基地址指针,默认采用_段寄存器指向的数据段;如果采用 EBP 或ESP 作为基地址指针,则默认使用_段寄存器指向堆栈
16、段。11. 代码段中下一条要执行的指令由_寄存器和_ 寄存器指示。12. IA-32 处理器有 8 个 32 位通用寄存器,其中 ESI,_,_和 ESP,不可以分解成 16 位和 8 位操作。13. IA-32 处理器在保护模式 MASM 采用 存储模型,而在实地址模式下则采用 存储模型。14. 除 I/O 指令外,具有双操作数的指令中,目的操作数只能采用_寻址方式或_寻址方式。15. 计算机存储信息的最小单位是 ,1 个字节等于 个二进制位。解答:1.2.3.4.5.6.7.8.9.10.11.12.13.14.15.四.简答题1. 举例说明 CF 和 OF 标志的差异。2. IA-32
17、处理器有哪三类基本段,各是什么用途?3. 什么是实地址方式、保护方式和虚拟 8086 方式?它们分别使用什么存储模型?4. 什么是平展存储模型、段式存储模型和实地址存储模型?5. 汇编语句有哪两种,每个语句由哪 4 个部分组成?6. 给出 IA-32 处理器的 32 位寻址方式的组成公式,并说明各部分作用。7. Pentium 的片上 Cache 采用统一结构还是分离结构?8. 为什么将查找操作数的方法称为数据寻“址”方式?解答:1.2.3.4.5.6.7.8.五.名词解释1. ALU2. Offset address3. Addressing mode4. Bus Interface Uni
18、t5. Code Prefetch Unit6. Instruction Decode Unit7. Protected mode8. Real-address mode9. System management mode10. Virtual-8086 mode11. General purpose registers12. Flat Memory Model13. Indirect Addressing14. Accumulator15. Instruction pointer解答:1.2.3.4.5.6.7.8.9.10.11.12.13.14.15.六.应用题解答:第 3 章 数据处理一
19、.选择1. BUF DWORD 10h DUP( 3 DUP( 2,5 ) ,3 ,4 ,5)语句 为变量 BUF 分配的内存空间的字节数是( ) 。A 50h B. 90h C. 240h D. 120h2. BUF DW 10H DUP(3 DUP(2,?) ,1 ,2 DUP(?) ,100)为变量 BUF 分配的内存空间的字节数是( ) 。A. 160 B. 22 C. 80 D. 3203. 类型操作符 PTR 用于( ) 。A. 定义内存变量的类型 B. 重新指定内存变量的类型C. 定义寄存器变量的类型 D. 重新指定寄存器变量的类型4. 用来定义双字变量的伪指令是( ) 。A.
20、DB B. DW C. DD D. DQ5. 用来定义字变量的伪指令是( ) 。A. DB B. DW C. DD D. DQ6. 用来定义字节变量的伪指令是( 。 )A. BYTE B. WORD C. DWORD D. QWORD7. 执行 AND 指令后,OF 和 CF 标志位的值是( ) 。A. OF=CF=0 B. OF=0,CF=1C. OF=1,CF=0 D. OF=1,CF=18. 执行 INC 指令除对于 SF、ZF 有影响外,还要影响的标志位是( ) 。A. AF,PF,CF B. OF,AF ,CFC. OF,PF,CF D. OF,AF,PF9. 执行 DEC 指令除对
21、于 SF、ZF 有影响外,还要影响的标志位是( ) 。A. AF,PF,CF B. OF,AF,CFC. OF,PF,CF D. OF,AF,PF10. 执行指令 XOR EAX,EAX 后则 ( )AAL=1, ZF=1 BAL=0, ZF=0 CAL=1, ZF=0 DAL=0, ZF=111. 下列指令执行后,不影响标志位的指令是( ) 。 。AADD EAX,1 BDEC DX CXOR CX,AX DLEA EDX,MSG12. 能够表示指令存放地址的是( )A 符号名 B 变量名 C 标号 D 常量名13. 8 位二进制无符号数所能表示的数值范围是( ) 。A0 255 B0 25
22、6C0 128 D0 12714. 16 位二进制补码所能表示的带符号数的数值范围是( ) 。A0 65535 B0 65536C32768 +32767 D65536 +6653615. 8 位二进制补码所能表示的带符号数的数值范围是( ) 。A0 255 B0 256C128 +127 D128 +128解答:1.2.3.4.5.6.7.8.9.10.11.12.13.14.15.二.判断1. 对一个正整数,它的原码、反码和补码都一样,也都与无符号数的编码一样。2. 常用的 BCD 码为 8421 BCD 码,其中的 8 表示 D3 位的权重。3. IA-32 处理器采用小端方式存储多字节
23、数据。4. 空操作 NOP 指令其实根本没有指令。5. 堆栈的操作原则是“先进后出 ”,所以堆栈段的数据除 PUSH 和 POP 指令外,不允许其他方法读写。6. 虽然 ADD 指令和 SUB 指令执行后会影响标志状态,但执行前的标志并不影响它们的执行结果。7. 指令“INC ECX”和“ADD ECX,1”的实现功能完全一样,可以互相替换。8. 无符号数在前面加零扩展,数值不变;有符号数前面进行符号扩展,位数加长一位、数值增加一倍。9. 逻辑运算没有进位或溢出问题,此时 CF 和 OF 没有作用,所以逻辑运算指令如AND、OR 等将CF 和 OF 设置为 0。10. CMP 指令是目的操作数
24、减去源操作数,CMPS 指令是源操作数减去目的操作数11. 指令“DEC ECX”和“SUB ECX,1”的实现功能完全一样,可以互相替换。12. 指令“TEST”和“AND ”的实现功能完全一样,可以互相替换。13. 指令“CMP EAX, ECX”和“SUB EAX, ECX”的实现功能完全一样,可以互相替换。14. CPU 在实施加减运算时不区分有符号数和无符号数。15. VAR 是数据段中定义的字变量,指令 MOV AL,VAR 是正确的。解答:1.2.3.4.5.6.7.8.9.10.11.12.13.14.15.三.填空1. (1)定义字节变量的伪指令助记符是 _,获取变量名所具有
25、的偏移地址的操作符是_。2. ( 2)计算机中有一个“01100001”编码。如果把它认为是无符号数,它是 10 进制数_;如果它是某个 ASCII 码,则代表字符_ 。3. C 语言用“n ”表示让光标回到下一行首位,在汇编语言中需要输出两个控制字符:一个是回车,其 ASCII 码是_ ,它将光标移动到当前所在行的首位;另一个是换行,其 ASCII 码是_,它将光标移到下一行。4. 数据段有语句“H8843 DWORD 99008843H”,代码段指令 “MOV CX, WORD PTR H8843”执行后,CX_;代码段指令“MOV CL, BYTE PTR H8843”执行后,CX_。5
26、. 数据段有语句“XYZ DWORD ?” ,则 XYZ 的类型是_,用“TYPE XYZ”会得到数值为_。6. 数据段有语句“ABC BYTE 3 DUP (1,2,3)”,代码段指令“ MOV CL, ABC+3”执行后,CL_; “MOV CL, ABC+8”执行后,CL_。7. 数据段有语句“ABC BYTE 3 DUP (1,2,3)”,代码段指令“ MOV AX, WORD PTR ABC”执行后,AX_; “MOV EAX, DWORD PTR ABC”执行后,EAX_。8. 顺序执行指令“XOR EAX, EAX”和“SUB EAX, EAX”后, EAX_,OF_。9. 顺序
27、执行指令“XOR EAX, EAX”和“DEC EAX”后,EAX_,CF_。10. 欲将 EDX 内的无符号数除以 16,使用指令“SHR EDX, _”; 欲将 EAX 内的有符号数除以 16,使用指令“_” 。11. 已知: X 补=10101100B ,Y 补=11000110B,则:X Y补= _ ,XY 补= _ 。12. 设字长为八位,有 x= 1,y=124,则有:xy补=_, xy 补=_。13. 已知:寄存器 AX=7836H,指令: ADD AX,9A5EH 执行后,AX=_,CF=_。14. 已知:寄存器 AX=7836H,指令: ADD AX,9A5EH 执行后, O
28、F=_, SF=_。15. “0“9“ 的 ASCII 码值是_,“A“Z“的 ASCII 码值是_。.解答:1.2. 97 , a3.4.5.6.7.8.9.10.11.12.13.14.15.四.简答题1. 使用二进制 8 位表达无符号整数,257 有对应的编码吗?2. 字符“F”和数值 46H 作为 MOV 指令的源操作数有区别吗?3. 为什么可以把指令“MOV AX, (3467H)*3”中的数值表达式看成是常量?4. 数值 500,能够作为字节变量的初值吗?5. 为什么说“XCHG EDX,CX”是一条错误的指令?6. 都是获取偏移地址,为什么指令“LEA EBX, ESI”正确,而
29、指令“MOV EBX, OFFSETESI”就错误?7. INC,DEC,NEG 和 NOT 都是单操作数指令,这个操作数应该是源操作数还是目的操作数?8. 大小写字母转换的规律是什么?给出转换的公式。解答:1.2.3.4.5.6.7.8.五.名词解释1. Twos Complement2. Nested Procedure Calls3. Conditional Jump4. Extended ASCII5. Integer constants6. Jumps Based on Signed Comparisons7. Little Endian Order8. Intrinsic Data
30、 Types解答:1.2.3.4.5.6.7.8.六.应用题解答:第 4 章 指令系统一.选择1. 11. 计算机内的“溢出”是指其运算的结果 ( )。A无穷大或无穷小 B超出了内存单元所能存储的数值范围 C超出了寄存器能存储数值的范围 D超出了该指令所指定的结果能存储的数值范围2. 计算机内的“溢出”是指其运算的结果 ( )。A无穷大或无穷小 B超出了内存单元所能存储的数值范围 C超出了寄存器能存储数值的范围 D超出了该指令所指定的结果能存储的数值范围3. 16 位二进制无符号数的数值范围是( ) 。A0 65535 B0 65536C0 32767 D0 327684. 最大的 10 位无
31、符号二进制整数转换成十进制数是 。A. 51 B. 512 C. 1023 D. 10245. ADD 指令不能影响标志寄存器的( )位。A.ZF B. SF C.CF D. TF6. INC 指令不能影响标志寄存器的( )位。A.ZF B. SF C.CF D. DF7. DEC 指令不能影响标志寄存器的( )位。A.ZF B. SF C.CF D. IF8. 在执行 DIV 或 IDIV 指令发生错误时会产生( )中断。A线路故障 B.内部 C.外部 D.单步9. 在执行 ADD 或 SUB 指令发生溢出错误时( ) 。A不产生任何中断 B. 会产生内部中断 C. 会产生外部中断 D. 会
32、产生单步中断10. 顺序执行 PUSH EAX 和 POP EBX 两条指令,其功能等同于( )AMOV EAX, EBX BMOV EBX, EAXCXCHG EAX, EBX DXCHG EBX, EAX11. 目前在微机中最普遍采用的字符的编码是( ) 。ABCD 码 BASCII 码C余三码 D格雷码12. 已知 X、Y 的补码分别为 11101011B、00001010B,求 X+Y 的补码等于( )。A. 10100001B B. 11011111BC. 11110101B D. 溢出13. 计算机中( )不能直接表示有符号数。A.原码 B.补码 C.反码 D.BCD 码14. 下
33、列字母中,ASCII 码值最小的是( ) 。A. K B. Y C. a D. i15. 当执行完下列指令序列后,标志位 CF 和 SF 的值为( )。MOV AL,0C4HADD AL,9DHA 0,0 B. 0,1 C. 1,0 D. 1,1解答:1.2.3.4.5.6.7.8.9.10.11.12.13.14.15.二.判断1. VAR 是数据段中定义的字变量,指令 MOV AX,VAR2 是正确的。2. VAR1 和 VAR2 是数据段中定义的字变量,指令 MOV AX, VAR1VAR2 是正确的。3. VAR1 和 VAR2 是数据段中定义的字变量,指令 MOV AX, VAR1V
34、AR2 是正确的。4. 执行乘法指令 IMUL src 时,运算结果不会产生溢出。5. 执行乘法指令 IMUL REG,src 时,运算结果不会产生溢出。6. 定义符号常量时,使用“=”与“EQU”没有区别。7. 地址操作符 OFFSET 可以获取任何寻址方式的内存变量的有效地址。8. 指令“SHL”与“SAL”的功能是等价的。9. 指令“SHR”与“SAR”的功能是等价的。10. 指令“LOOP Lable ”与“DEC ECXJNZ Lable”的功能是等价的。11. 32 位机不能完成 64 位整数加法运算。12. 只有补码才能表示有符号数。13. 指令“LEA ”可以获取任何寻址方式的
35、内存变量的有效地址。14. 指令“LEA ”可以实现求两个寄存器与一个立即数三个数之和的功能。15. 堆栈内部中的数据是无法修改的。解答:1.2.3.4.5.6.7.8.9.10.11.12.13.14.15.三.填空1. 顺序执行指令“XOR EAX, EAX”和“SUB EAX, 1”后,EAX_,CF_。2. 数据段有语句“BUF DWORD 10h DUP( 3 DUP( 2,? ) ,3 ,4 ,5)”,则用“LENGTHOFBUF”会得到数值为 _,用“SIZEOF BUF”会得到数值为_。3. 已知 AL=01100001B,执行指令“AND AL,5FH”后,AL=_;如果 A
36、L 的内容是某个 ASCII 码,则代表字符 _。4. 已知 AL=01000001B,执行指令“OR AL,20H”后,AL=_;如果 AL 的内容是某个 ASCII 码,则代表字符_。5. 设字长为八位,128 补=_H , 1 补=_H。6. 已知:寄存器 AX=7836H,指令: TEST AX,9A5EH 执行后, OF=_,SF=_。7. 已知:寄存器 AX=7836H,指令: CMP AX,9A5EH 执行后, AX=_, OF=_。8. 要测试 AX 的第五位是否为 1,使用指令_;若要将 AL 的第五位置为1,使用指令_。 (说明:最低位为第 0 位。 )9. 已知:寄存器
37、AX=9A5EH,指令: NEG AX 执行后, OF=_,SF=_。10. 已知:寄存器 EAX=65536,EBX=32768,指令:DIV EBX 执行后, EAX=2。则指令:DIVEBX 执行前 EDX 的值应为_,指令:DIV EBX 执行后 EDX=_。11. 已知:寄存器 AL=1 ,指令:MOVSX BX,AL 执行后, BX= _H;指令:MOVZX CX,AL 执行后, CX= _H。12. 顺序执行指令序列“XOR EAX,EAX ,DEC EAX ,ADC EAX,0”后,CF=_,ZF=_ 。13. 顺序执行指令序列“XOR EAX,EAX ,SUB EAX,1 ,
38、ADC EAX,0”后,CF=_,ZF=_。14. 已知:寄存器 AL=10,BL=10,指令:MUL BL 执行后, AX=_H;而若将指令改为:IMUL BL 则执行后 AX=_H;15. 若要将 AX 的第五位和第九位置为 0,使用指令_;若要将 AX 的第五位和第九位置反,使用指令_。 (说明:最低位为第 0 位。 )解答:1.2.3.4.5.6.7.8.9.10.11.12.13.14.15.四.简答题1. 乘除法运算针对无符号数和有符号数,有两种不同的指令。只有一种指令的加减法如何区别无符号数和有符号数运算?2. 逻辑与运算为什么也称为逻辑乘?3. 简述逻辑运算指令怎么实现复位、置
39、位和求反功能?4. 在处理一维数组时,通常可以采用哪些寻址方式?各自的特点是什么?5. 通常在什么情况下需要使用 MOVSX、MOVZX 指令?6. 通常在什么情况下需要使用 PTR 类型操作符?举例说明。7. ESP 是通用寄存器,是否可以随意的修改 ESP 的值?8. 大小写字母转换的规律是什么?给出转换的公式。解答:1.2.3.4.5.6.7.8.五.名词解释1. Program flow control instructions2. OFFSET Operator3. Loop Counter4. . Pseudo Code5. Single Dimension Array6. Con
40、ditional Loop Instructions7. Arithmetic instructions8. Jumps Based on Unsigned Comparisons解答:1.2.3.4.5.6.7.8.六.应用题解答:第 5 章 汇编语言程序设计一.选择1. 循环指令 LOOP 终止循环的条件是( ) 。AECX=0 B. ECX=0,且 ZF=0CECX0,且 ZF=0 D. ECX0 ,或 ZF=12. 循环指令 LOOPNZ 终止循环的条件是( ) 。AECX=0,或 ZF=1 B. ECX=0,且 ZF=0CECX0,且 ZF=0 D. ECX0 ,或 ZF=13. L
41、OOP 指令执行时,隐含计数器是( ) 。A ESP BEBX C ECX DEDI4. 当 AB 时转移的条件转移指令为(A、B 为无符号数) ( ) 。A. JA B. JAE C. JG D. JGE5. 当 A=B 时转移的条件转移指令为(A、B 为 有符号数) ( ) 。A. JA B. JAE C. JG D. JGE6. 条件转移指令 JC Label 的测试条件是( ) 。A. ZF = 1 B. SF = 1 C. OF = 1 D. CF = 17. 若主程序通过堆栈向子程序传递了 3 个参数,子程序返回主程序时,在子程序中清除堆栈中 3 个参数正确的 RET 指令是( )
42、 。A. RET 3*1 B. RET 3*2 C. RET 3*3 D. RET 3*48. 主程序通过堆栈向子程序传递了 3 个参数,子程序调用结束后,在主程序中清除堆栈中3个参数正确的指令是( ) 。A. ADD ESP, 3*2 B. ADD ESP, 3*4 C. ADD EBP, 3*2 D. ADD EBP, 3*49. 条件转移指令 JZ Label 的测试条件是( ) 。A. ZF = 1 B. SF = 1 C. OF = 1 D. CF = 110. 利用堆栈传递子程序参数的方法是固定的,若主程序通过堆栈向子程序传递了 3 个参数,则在子程序中, 主程序中最后一个被压入栈中的参数可以用( )的形式来访问。A. EBP4 B. EBP8 C. EBP