第1章 微机运算基础
习题和思考题
1. 请完成以下计算:
174.66D=(10101110.10101)B=(AE. A8)H
10101110101.01011B=( 1397.344)D=(575.58)H 4BCH=(010010111100)B=( )BCD
2. 设字长为8位,X=(2A)16,当X分别为原码、补码、反码和无符号数的时候,其真
值是多少?
答:当X表示原码时,其真值为:+101010 当X表示补码时,其真值为:+101010 当X表示反码时,其真值为:+101010
当X表示无符号数数时,其真值为:00101010
3. 设字长为8位,用补码形式完成下列计算,要求有运算结果并讨论是否发生溢出?
120+18 -33-37 -90-70 50+84 答:120+18
其补码形式分别为:(120)补=01111000 (18)补=00010010 01111000 + 00010010 10001010
由于Cs=0 ,Cp=1,因此有溢出,结果错误 -33-37 其补码形式为:(-33)补=11011111 (-37)补=11011011 11011111 +11011011 10111010
由于Cs=1, Cp=1,所以没有溢出,结果正确 -90-70
其补码形式为:(-90)补=10011100 (-70)补=10111010 10011100 +10111010 01010110
由于Cs=1, Cp=0,所以有溢出,结果错误 50+84
1
其补码形式为:(50)补=00110010 (84)补=01010100 00110010 +01010100 10000110
由于Cs=0, Cp=1,所以有溢出,结果错误
4. 请写出下列字符串的ASCII码值。
My name is Zhang san.
4D 79 6E 61 6D 65 69 73 5A 68 61 6E 67 73 61 6E 2E
第2章 80X86微机系统
习题与思考题
1. 微型计算机主要由哪些基本部件组成?各部件的主要功能是什么?
答:微型计算机主要由输入设备、运算器、控制器、存储器和输出设备组成。 各部件的功能分别是:1、输入设备通过输入接口电路将程序和数据输入内存;2、运算器是进行算术运算和逻辑运算的部件,它是指令的执行部件;3、控制器是计算机的指挥中心,它负责对指令进行译码,产生出整个指令系统所需要的全部操作的控制信号,控制运算器、存储器、输入/输出接口等部件完成指令规定的操作;4、存储器用来存放程序、原始操作数、运算的中间结果数据和最终结果数据; 5、输出设备是CPU通过相应的输出接口电路将程序运行的结果及程序、数据送到的设备; 2. 微处理器的发展过程是什么?
答:微型计算机的发展过程是:
第一代(1946~1957)——采用电子管为逻辑部件,以超声波汞延迟线、阴极射线管、磁芯和磁鼓等为存储手段;软件上采用机器语言,后期采用汇编语言。
第二代(1957~1965)——采用晶体管为逻辑部件,用磁芯、磁盘作内存和外存;软件上广泛采用高级语言,并出现了早期的操作系统。
第三代(1965~1971)——采用中小规模集成电路为主要部件,以磁芯、磁盘作内存和外存;软件上广泛使用操作系统,产生了分时、实时等操作系统和计算机网络。
第四代(1971~至今)——采用大规模集成电路(LSI)、超大规模集成电路(VLSI)为主要部件,以半导体存储器和磁盘为内、外存储器;在软件方法上产生了结构化程序设计和面向对象程序设计的思想。
3. 简述80486微处理器的基本结构。
书12页
4. 80486微处理器的工作模式有几种?当CS内容为1000H,IP内容为7896H,求在实地
址模式下的物理地址为多少?
答:实模式和保护模式及虚拟8086模式。当CS内容为1000H,IP内容为7896H,在实2
地址模式下的物理地址为17896H. 5. 简述EPROM的工作原理。
书27页。
6. 总线有那几种类型?
答:按照总线的传输类型可分为数据、地址、控制三类;按和cpu的距离可分为内部总线、系统总线和外部总线。
7. 简述ISA与EISA总线的的区别。它们的局限性表现在哪里?
书34页。
8. PCI局部总线有些什么特点?
书35页
9. 什么是USB?它有什么特点?
书41页
10. IEEE 1394总线有哪些特点?它与USB总线的区别在哪里?
书41页。
11. 简述现场总线的特点。
书42页。
12. 当代计算发展的主要核心技术有哪些?
当代计算机的主要核心技术有:CACHE技术、流水线技术、VM技术、RISC技术、多内核技术
第3章 80X86指令系统
习题与思考题
1. 指出下列各指令中源操作数和目的操作数的寻址方式: ⑴ MOV BX,WORD PTR[2200H] ⑵ AAA ⑶ JUM 2200H ⑷ LES DI,[2100H] ⑸ MOV [BX+SI+8], BX 解答 ⑴ MOV BX, WORD PTR[2200H] 源操作数:直接寻址;目的操作数:寄存器寻址 ⑵ AAA 源操作数:寄存器寻址AL(也称隐含寻址);目的操作数:寄存器寻址 ⑶ JUM 2200H 程序转移段内直接寻址方式 ⑷ LES DI,[2100H] 源操作数:直接寻址;目的操作数:寄存器寻址
1
⑸ MOV [BX+SI+8], BX 源操作数:寄存器寻址;目的操作数:基址加变址寻址
2. 若AX=0ABCDH,BX=7F8FH,CF=1。 求分别执行8086 CPU指令 ⑴ ADD AX,BX ⑵ ADC AX,BX ⑶ SBB AX,BX ⑷ NEG AX ⑸ AND AX,BX ⑹ OR AX,BX ⑺ XOR AX, BX ⑻ IMUL BL
后,AX寄存器中的内容,并指出标志寄存器SF,ZF,AF,PF,CF及OF的状态。 解答 ⑴ AX=2B5CH, SZAPCO=001110B ⑵ AX=2B5DH, SZAPCO=001010B ⑶ AX=2C3DH, SZAPCO=001001B ⑷ AX=5433H, SZAPCO=001110B ⑸ AX=2B8DH, SZAPCO=00X100B ⑹ AX=FFCFH, SZAPCO=10X100B ⑺ AX=D222H, SZAPCO=10X100B ⑻ AX=3283H, SZAPCO=XXXX11B
3. 若AL=78H,BL=87H, ⑴求执行指令 ADD AL,BL DAA
之后,AL=?、标志AF=?、CF=?
⑵ 若执行指令 SUB AL,BL与DAS后,AL=?、标志AF=?、CF=? 解答 ⑴ AL=65H, AF=1, CF=1。 ⑵ AL=91H, AF=0, CF=1。
4. 指出下列指令中哪些是错误的,并指出错在何处? ⑴ MOV DL,[DX] ⑵ MOV ES,2000H ⑶ SUB [BX],[SI] ⑷ ADD AX,[BX+CX] ⑸ XCHG DS,[2400H] ⑹ DEC 15H ⑺ IN AL,DX ⑻ OUT 300H,AX
解答
⑴ 错,DX不能作为间接寻址的寄存器。 ⑵ 错,立即数不能直接送给段寄存器。 ⑶ 错,两个存储单元间内容不能直接相减。 ⑷ 错,CX寄存器不能作为变址寄存器。 ⑸ 错,不允许段寄存器与存储单元内容进行交换 ⑹ 错,减1指令不能对段寄存器直接操作 2
⑺ 对 ⑻ 错,输出指令的地址若是16位,必须用DX间址。
5. 下列程序段执行后 AX=?
设数据段有: TABLE DW 100,200,300,400 ENTRY DW 3 代码段 对DS初始化 MOV BX,OFFSET TABLE MOV SI,ENTRY MOV AX,[BX+SI] 执行后 AX=2C00
6. 将AL中的8位二进制数按倒序方式重新排列,即AL原来为D7D6…D0,倒序后AL=D0D1…D7。
参考答案 …
MOV CX, 8
L: SHL AL, 1 RCR BL, 1 LOOP L MOV AL, BL …
7.若起始地址偏移量为2000H的内存单元存放有100个ASCII码字符,现给这些字符添加奇偶校验位(bit7),使每个字符中“1”的个数为偶数,在顺序输出到地址为100H的端口。
解答 MOV SI, 2000H MOV CX, 100 MOV DX, 100H NEXT2: MOV AL, [SI] ;取字符串中字符送AL AND AL, 0FFH ;改变标志位 JPE NEXT1 ;“1”的个数为偶,bit7不变 OR AL, 80H ;“1”的个数为奇,bit7变为1 NEXT1: OUT DX, AL INC SI LOOP NEXT2 MOV AH, 4CH INT 21H
8. 若SS=1000H,SP=2000H,AX=1234H,BX=5678H,FR=2115,试说明执行指令 PUSH AX PUSH BX PUSHF
1