《工业用微型计算机》串讲资料(一)

更新时间:2023-10-12 19:37:01 阅读量: 综合文库 文档下载

说明:文章内容仅供预览,部分内容可能不全。下载后的文档,内容与下面显示的完全一致。下载之前请确认下面内容是否您想要的,是否完整无缺。

第一章 微型计算机基础

本章主要介绍了微型计算机的发展、系统组成和微处理器,同时也分析了计算机中涉及的常见编码形式和数制的相关内容。通过本章的学习,了解典型的微处理器特点,以及各自的差异,会熟练应用数制和编码的有关知识,解决实际问题。同时也要了解微型计算机的发展,从而在整体上把握计算机的由来和微型计算机在整个计算机中的地位。

一、重点提示

本章的重点是掌握计算机中无符号数和有符号数的表示方法;各种进制的转换关系; CPU中的功能结构和各个寄存器的用途;存储器的结构;最后能理解计算机的工作原理。 二、难点提示

1.计算机中的数制和编码 2.无符号数和有符号数的表示方法 3.各种进制的转换关系 4.CPU的结构和寄存器 5.存储器的结构

1.微型计算机的发展 2.计算机中的数制和编码系统 (1)无符号数的表示和运算 (2)带符号数的表示方法 (3)8位与16位二进制数的范围 (4)计算机中的字符编码 3.微型计算机系统的组成 (1)微型计算机系统的构成 (2)工业微型计算机概况 (3)微型计算机中的外围设备 4.微处理器

(1)Intel 8088/8086微处理器

(2) Intel 80286、80386、80486微处理器 (3)Pentium微处理器 (4)CPU主板和CPU卡

一、单项选择题

1.若十进制数据为137.5则其八进制数为 ( ) A. 89.8 B.211.4 C.211.5 D.1011111.101 [答案]B

【解析】十进制数转化为八进制数时,整数部分和小数部分要用不同的方法来处理。 整数部分的转化采用除基取余法:将整数除以8,所得余数即为八进制数的个位上数码,再将商除以8,余数为八进制十位上的数码??如此反复进行,直到商是O为止;对于小数的转化,采用乘基取整法:将小数乘以8,所得积的整数部分即为八进制数十位上的1数码,再将此积的小数部分乘以8,所得积的整数部分为八进制数百分位上的数码,如此反复??直到积是0为止。此题经转换后得八进制数为211.4。 2.若十进制数为132.75,则相应的十六进制数为 ( ) A. 21.3 B.84.C C.24.6 D.84.6 [答案]B Ⅵ。

【解析】十进制数转化为十六进制数时,采用除16取余法;对于小数的转化,采用乘16取整法:将小数乘以16,所得积的整数部分转换为十六进制。此题经转换后得十六进制数为84.C。

3.若十六进制数为A3.5,则相应的十进制数为 ( ) A.172.5 B.179.3125 C.163.3125 D.188.5 [答案]C

【解析】将十六进制数A3.5转换为相应的十进制数,可采用乘幂相加法完成,即:

10?161?3?160?5?16?1?163.3125。

4.若二进制数为1111.101,则相应的十进制数为 ( ) A.15.625 B.15.5 C.14.625 D.14.5

[答案]A

【解析】将二进制数1111.101转换为相应的十进制数,可采用乘幂相加,法完成,即:

1?23?1?22?1?21?1?20||?1?2?1?1?2?3?15.625。

5.若十六进制数为B5.4,则相应的十进制数为 ( ) A.176.5 B.176.25 C.181.25 D.181.5

[答案]C

【解析】将十六进制数B5.4转换为相应的十进制数,可采用乘幂相加祛完成,即:

11?161?5?160?4?16?1?181.25

(1)十进制转换为二进制

方法:整数部分除2取余,小数部分乘2取整。 (2)二进制转换为八进制

方法:以小数点为界,整数部分从右向左每三位分为一组,最左端不够三位补零;小数部分从左向右每三位分为一组,最右端不够三位补零;最后将每小组转换为一位八进制数。

(3)二进制转换为十六进制

方法:以小数点为界,整数部分从右向左每四位分为一组,最左端不够四位补零;小数部分从左向右每四位分为一组,最右端不够四位补零;最后将每小组转换为一位十六进制数。

6.如果X为负数,由[x]补求[-x]补是将 ( ) A.[x]补各值保持不变

B.[X]补符号位变反,其他各位不变 C.[x]补除符号位外,各位变反,末位加1 p.[X-]补连同符号位一起各位变反,末位加1 [答案]D

【解析】不论X是正数还是负数,由[x]补求[-x]补的方法是对[X]补求补,即连同符号位一起按位取反,末位加1。

7.若x补=0.1101010,则x原= ( ) A. 1.0010lOl B. I. 0010llO C. 0.0010110 D. 0. llO1OlO [答案]D

【解析】正数的补码与原码相同,负数的补码是用正数的补码按位取反,末位加1求得。此题中X补为正数,则X原与X补相同。 8.若x= 1011,则[x]补: ( ) A.01011 B.1011 C.0101 D.10101 [答案]A

【解析】x为正数,符号位为0,数值位与原码相同,结果为01011。 9.若[x]补=1.1011,则真值X是 ( ) A.-0.1011 B.-0.0101 C.0.1011 D. O. 0101 [答案]B

【解析】[x]补=1. 1011,其符号位为1,真值为负;真值绝对值可由其补码经求补运

算得到,即按位取后得0.0t00,在末位加1得O,0101,故其真值为--0.0101。 10.设有二进制数x=-llOlllO,若采用8位二进制数表示,则[x]补 ( ) A. 1tl01101 B.10010011 C.0001001 1 D.10010010 [答案]D

【解析】x=-1101110为负数,负数的补码是将二进制位按位取反后在最低位上加1,故[x]补=10010010。

11.若Ex-1补-0. 1011,则真值X= ( ) A.0.1011 B.0.0101 C.1.1011 D. l. 0101 [答案]A

【解析】[x]补=0.1011,其符号位为0,-真值为正;真值就是0.1011。

12.若定点整数64位,含1位符号位,补码表示,则所能表示的绝对值最大负数为 ( ) A.-264 B.-(264_L1) C.-263 D.-(263-1) [答案]C

【解析】字长为64位,符号位为1位,则数值位为63位。当表示负数时,数值位全0为负绝对值最大,为?2。

13.8位二进制无符号数的表示范围是. ( ) A.0~128 B.-127~+128 C.-128~+127 D.0~255

[答案]D

【解析】8位二进制无符号数的表示范围是0~2558位二进制符号数的表示范围是--128~+127

14.一个n+l位整数原码的数值范围是 ( )

A.?2?1?x?2?1 C.?2?1?x?2?1 [答案]D

【解析】 “O”是一个特殊的状态 15.9的ASCII码是 ( ) A.39 B.41H C.28H D.39H [答案]D

【解析】 0~9的ASCII码是30H~39H; A~Z的ASCII码是41H~5AH; a~z的ASCII码是61H~7AH。

nnnn63B.?2?1?x?2?1 D.?2?1?x?2?1

nnnn

16.在按字节编址的存储器中,每个编址单元中存放 ( ) A.1位 B.8位 C.16位 D.32位 [答案]B

【解析】在按字节编址在存储器中,每个编址单元的容量为一个字节,一个字节由8位二进制数组成,一个字节存储单元可以存放8位二进制位。

17.设当前的CS=8915H,IP=0100H,那么当前取指令的首地址是从.( )开始的。 A. 8A150H B.89250H C.18195H D.0100H [答案]B

【解析】这个题主要考查了我们2个主要的知识结构,一个是地址合成公式:一个20位物理地址=基址×16+偏移地址

另一个是取指令的首地址在代码段,代码段的基址在CS寄存器,偏移地址在IP中所以取指令的首地址:8915H×16+0100H=89150H+0100H=89250H。。

18.设当前的DS=D200H,SI=2E00H,取数据又是从具体的( )存储单元获得的。 A.D2E00H B.2E00H C.D4E00H D.D2000H [答案]C

【解析】数据段基址在DS寄存器,偏移地址可以由SI给出,所以:数据的存储单元物理地址= D2000H+ 2E00H=D4E00H。

19.如果把地址用CS:IP形式表达,具体写成为2200H:4000H,具体的物理地址是 ( ) A.22000H B.4000H C.6200H D.26000H [答案]D

【解析】 物理地址=22000H+4000H=26000H

20.若寄存器AX,BX的内容分别为1110H,5678H时,依次执行PUSH AX,PUSHBX,POP AX,POP BX后,则寄存器AX和BX的内容分别为 ( ) A. 1110H,7856H B.5678H,1234H C. 5678H,1110H D.7856H,1011H [答案]C

【解析】基本操作及地址的变化规律:

入栈:先修改指针SP= SP-1,再把数据放入堆栈 出栈:先把数据从堆栈中取出,再修改指针SP=SP+1 21. 8086CPU中断请求线有 ( ) A.1条 B.2条 C.4条 D.8条 [答案]B

【解析】8086CPU中断请求线有INTR和NMI两条。它们都是外部中断申请输入端。 22.当8086处于单步工作方式时,必须为1的标志位的是 ( ) A.IF B.SF C.TF D.OF [答案]C

【解析】TF称为跟踪标志位。如果让8086处于单步工作方式,则TF需设置为1。若想让CPU工作在全速运行状态下,则要设成O。

23.二进制数00000110的8421BCD码表示的十进制数是 ( ) A.3 B.4 C.5 D.6 [答案]D

【解析】8421BCD码中的O~9对应的二进制数应该熟记:

8421BCD码 O 1 2 3 4 5 6 7 8 9 二进制数 0000 0001 0010 0011 0100 0101 0110 0111 1000 1001 24.8086微处理器的RD引脚是属于 ( ) A.输入信号 B.数据信号 C.控制信号 D.地址信号 [答案]C

【解析】在8086微处理器的控制引脚中,要重点掌握读写控制信号的引脚和它们的方向。RD引脚和WR引脚本身都是输出引脚,但是在这2个引脚的信号输出之后,接下来的数据总线上的信号传送方向就是从CPU片外取回数据这是在读控制信号输出之后,而CPU把内部的数据输出给片外这是在写信号之后的动作过程。 二、填空题

1.在CPU的状态寄存器中,常设置以下状态位:零标志位(Z),负标志位(N), 和 。 [答案]溢出标志位(V) 进位或借位标志位(C)

【解析】在CPU中专门设置有一个存储计算机状态的寄存器,称为状态寄存器SR,其

中通常包括如下标志位:零标志位(Z)、负标志位(N)、溢出标志位(V)、进位或借位标志位(C)等。

2.IP是 寄存器,主要作用是 。

[答案] 指令指针 用以存放预取指令的偏移地址。

【解析】IP是一个很主要的寄存器。CPU从代码段中偏移地址为IP的内存单元中取出指令代码的一个字节,然后IP自动加1,指向指令代码的下一个字节。用户不能编程直接访问IP。

3.8086内部有 个 位的寄器,按其功能,可以分为三大类:第一类是 寄存器(8个),第二类是 寄存器(4个),第三类是 寄存器(2个)。 [答案] 14 16通用段控制

【解析】8086内部有14个16位的寄存器。在通用寄存器中包括数据寄存器,地址寄存器,变址寄存器等3小类。段寄存器主要是存储器的四段:数据段基址寄存器DS,代码段基址寄存器CS,堆栈段基址寄存器SS,附加数据段基址寄存器ES。控制寄存器主要包括指令指针寄存器IP和标志寄存器FLAGS。

4.已知x= 0101,y=0101,请用补码一位乘法中的Booth算法计算x.y2= 。 [答案]-25

【解析】x=0101,x补=0101,-X补=1011,y=-0101,y补=1011

循环 O 1 i步骤 初始值 减0101 右移1位 无操作 右移1位 加0101 右移1位 减0101 右移1位 乘积(RO Rl P) 0000 1011 0 1011 1011 0 1101 1101 1 1101 1101 1 1110 1110 1 0011 1110 1 0001 1111 0 1100 1111 0 1110 0111 1 2 3 4 所以结果为[x.y]补=11101111,真值为-00011001,十进制值为-25。

补码一位乘法中的Booth算法是一种对带符号数进行乘法运算的十分有效的处理方法,采用相加和相减的操作计算补码数据的乘积。做法是从最低位开始,比较相临的数位,相等时不加不减,只进行右移位操作;不相等(01)时加乘数,不相等(10时)相减乘数,再右移位;直到所有位均处理完毕。

5.已知x=0011,y= -0101,试用原码一位乘法求xy= 。

[答案]-00001111B

,|y|?0101结果的符号位1?O=1 【解析】x原=00011,y原=10101,|x|?0011

循环 O 1 步骤 初始值 加0011 右移1位 加O 右移1位 加0011 右移1t位 加0 右移1位 乘积(RO Rl) 00000101 0011 0101 0001 1010 0001 1010 0000 1101 0011 1101 0001 1110 0001 1110 0000 1111 2 3 4 所以结果为--00001111B。

原码一位乘法中,符号位与数值位是分开进行计算的。运算结果的数值部分是乘数与被乘数数值位的乘积,符号是乘数与被乘数符号位的异或。原码一位乘法的每一次循环的操作是最低位为1,加被乘数的绝对值后右移1位;最低位为0,加0后右移1位。几位乘法就循环几次。

6.设(DS)=2000H,(SS)=2410H,(AX)=2510H,(SP)=0206H,则指令PUSHAX执行之后对应的AX低8位()和高8位()分别放在()和()2个物理地址中。 [答案]10H 25H 20204H 20205H 【解析】注意字的高低八位,和物理地址的合成。 7.不可屏蔽中断从8086CPU的 引脚进入。 [答案]NMI

【解析】8086CPU有2种外部中断源,一个是从INTR引脚输入的可屏蔽中断源,另一个就是题中说的不可屏蔽的中断源。

第二章 8086/8088微处理器的指令系统

本章主要介绍了微型计算机指令系统中的寻址方式,各类指令格式,应用DEBUG调试简单的应用程序,通过对常见指令的分析和学习,能熟悉利用DEBUG调试程序上机,编写程序段和运行该程序段,查看标志的变化,存储器和各寄存器的内容变化,进而理解微处理器的工作原理和工作过程。

一、重点提示

本章的重点是理解每种寻址方式的操作数所在的位置,不同指令使用的操作数形式的差异,对堆栈操作指令的理解以及堆栈的操作过程,能够判断一条指令的寻址方式,典型

指令的实际应用。 数据的寻址方式: 1.立即寻址

操作数直接在指令中给出。例:MOV AL,50 2.寄存器寻址

指令的操作码是一个寄存器,操作数在这个寄存器中。例:ADD AX,BX,将AX中的内容和BX中的内容相加后,结果送AX。 3.直接寻址

操作数在存储器中的地址在指令中直接给出。例:ADD AX,-I000H],将存储单元1000H中的内容和AX中的内容相加后,结果送AX。 4.寄存器间接寻址

操作数的地址在寄存器中,其寄存器在指令中给出。例:MOV AX,[SI],将寄存器SI中的内容作为访问存储器的某个单元的地址,然后取出地址中的操作数送入AX。 5.变址寻址

是由指令提供基地址、变址寄存器提供偏移爨,此寻址方式面向用户,常用于访问字符串、向量数据结构和循环程序设计。 6.基址寻址

是由基址寄存器提供基准地址、指令提供偏移量;此寻址方式面向系统,由逻辑地址空间到物理地址空间的变换提供支持,用以解决程序在存储器中再定位和扩大寻址空间。等问题。

7.基址一变址寻址

操作数的地址是程序计数器PC的值加上偏移量形成的,这个偏移量在指令中给出。是一种特殊的变址寻址方式,偏移量用补码表示,可正可负。相对寻址可用较短的地址码访问内存。

二、难点提示

1.操作码和操作数的实质 2.寻址方式的判断 3.指令的执行过程 4.堆栈操作的过程 5.指令执行结果的分析

1.寻址方式 (1)指令格式 (2)立即数寻址 (3)寄存器操作数寻址

(4)存储器操作数寻址:直接寻址,寄存器寻址,变址寻址,基址-变址寻址

2.8088/8086指令系统 (1)数据传送指令 (2)算术运算指令

(3)逻辑运算指令和移位指令 (4)串操作指令 (5)控制转移指令 (6)位处理器控制指令 3.DEBUG调试程序的简单应用

表2-1数据传送指令

助记符 MOV PUSH 通用数据传送指令 POP XCHG XLAT LEA 地址目标传送指令 LDS LES LAHF 标志传送指令 SAHF PUSHF POPF I/O指令 IN OUT 功能 传送字节或字 字人栈 字出栈 交换字节或字 字节转换 装入有效地址 将指针变量装入寄存器及DS 将指针变量装入寄存器及ES 标志寄存器低字节送AH AH值送标志寄存器低字节 标志寄存器内容进栈 标志寄存器内容出栈 输入字节或字 输出字节或字 表2-2算术运算指令

助记符 ADD ADC 加法指令 INC AAA DAA SUB 减法指令 SBB DEC NEG 功能 加法 带进位的加法 增量(加1) 加法的ASCII修正 加法的十进制修正 减法 带借位的减法、 减量(减1) 求补(变负)

CMP AAS DAS MUL 乘法指令 IMUI。 AAM DIV 除法指令 IDIV AAD 转 换 CBW CWD 比较 减法的ASCII修正 减法的十进制修正 无符号数乘法 整数乘法 乘法的ASCII修正 无符号数除法 整数除法 除法的ASCII修正 字节转换为字 字转换为双字 表2-3位处理指令

助记符 AND 0R 逻辑运算符 NOT XOR TEST SHL 移位指令 SAL SHR SAR ROL 循环移位指令 ROR RCL RCR 功能 逻辑“与” 逻辑“或” 逻辑“非” 逻辑“异或” 测试 逻辑左移 算术左移 逻辑右移 算术右移 循环左移 循环右移 通过CF循环左移 通过CF循环右移 表2-4 串操作指令

助记符 MOVS( MOVSB, MOVSW) CMPS(CMPSB, CMPSW) 串操作指令 STOS(STOSB, STOSW) LODS(LODSB, LODSW) SCAS (SCASB, SCASW) 重复前缀 REP REPE/REPZ 功 能 串传送(字节传送,字传送) 串比较(字节比较,字比较) 存入串(存入字节,存入字) 取出串(取出字节,取出字) 扫描串(扫描字节,扫描字) 重复操作 等于/为零重复

REPNE/REPNZ 不等于/不为零重复 表2-5程序转移指令

助记符 CALL 无条件转移指令 RET JMP JA/JNBE JAE/JNB JB/JNAE JBE/JNA JC JE/JZ JG/JNLE JGE/JNL JL/JNGE 条件转移指令 JLE/JNG JNC JNE/JNZ JNO JNP/JPO JNS J0 JP/JPE JS JCXZ LOOP 重复控制指令 LOOPE/LOOPZ LOOPNE/LOOPNZ INT 中断指令 INT3 INTO IRET 功能 调用过程(子过程) 从过程(子过程)返回 无条件转移 高于/不低于等于,转移 高于等于/不低于,转移 低于/不高于等于,转移 低于等于/不高于,转移 有进位(借位),转移 等于/为零,转移 大于/不小于等于,转移 大于等于/不小于,转移 小于/不大于等于,转移 小于等于/不大于,转移 无进位(借位),转移 不等于/不为零,转移 不溢出,转移 PF为“0\奇状态,转移 SF为“O”,转移 溢出,转移 PF为“1”/偶状态,转移. SF为“1”,转移 寄存器CX=O,转移 循环 等于/为零,循环 不等于/不为零,循环 中断 断点中断 溢出中断 中断返回 表2-6处理器控制指令

助记符 标志位操作

STC 功能 进位标志置1

CLC CMC STD CLD STI CLI HLT 外同步 WAIT ESC LOCK 空操作 NOP 进位标志置O 进位标志取反 方向标志置1 方向标志置O 中断允许标志置1 中断允许标志置O 暂停直至中断或复位 等待TEST信号有效 交权给外部处理机 在下一条指令期间封锁总线 空操作 表2-7串操作指令中寄存器和标志位的用途

寄存器/标志 SI DI DS ES CX 用途 源字符串的变址值(偏移量) 目的字符串的变址值(偏移量> 源字符串的段基值 目的字符串的段基值 重复次数计数器 SCAS指令的扫描值 AL/AX LODS指令的目的操作数 STOS指令的源操作数 ZF DF 扫描/比较结束标志 DF=O.SI,DI自动增量 DF=1.SI,DI自动减量

一、单项选择题

1.为了缩短指令中某个地址段的位数,有效的方法是采取 ( ) A.立即寻址 B.变址寻址 C.间接寻址 D.寄存器寻址 [答案]D

【解析】由,于计算机中寄存器的数量一般很少,采用寄存器寻址时可用少量的代码来指定寄存器,这样可以减少对应地址段的代码位数,也可减少整个指令的代码长度。 2.堆栈指针SP的内容是 ( ) A.栈顶单元内容 B.栈顶单元地址 C.栈底单元内容 D.栈底单元地址

[答案]B

【解析】堆栈是按特定顺序进行访问的存储区,其访问方式是后进先出,即先存入的数据后读出。对堆栈的访问由堆栈指针寄存器SP控制,其内容为堆栈中栈顶单元的地址,即入栈时数据保存在SP指向的单元,出栈时将SP指向单元的内容取出。 3.采用直接寻址方式,则操作数在( )中。 A.主存 B.寄存器 C.直接存取存储器 D.光盘 [答案]A

【解析】直接寻址方式是指在指令中直接给出操作数在存储器中的地址,操作数在主存储器中,指令中的地址直接作为有效地址,对存储器进行访问即可取得操作数。 4.假设寄存器R中的数值为200,主存地址为200和300的地址单元中存放的内容分别是300和400,则什么方式下访问到的操作数为200 ( ) A.直接寻址200 B.寄存器间接寻址(R) C.存储器间接寻址(200) D.寄存器寻址R [答案]D

【解析】直接寻址200的操作数为300,寄存器间接寻址(R)的操作数300,存储器间接寻址(200)的操作数为400,寄存器寻址R的操作数为200。 5.单地址指令 ( )

A.只能对单操作数进行加工处理 B.只能对双操作数进行加工处理 C.无处理双操作数的功能

D.既能对单操作数进行加工处理,也能在隐含约定另一操作数(或地址)时,对双操作数进行运算 [答案]D

【解析】单地址指令既能对单操作数进行加工处理,也能对双操作数进行运算。当处理双操作数时,一个操作数在指令中给出,另一个操作数则是隐含约定的,例如堆栈操作指令中的入栈指令PUSH,指令中只给出源操作数,而目的操作数则由计算机中的堆栈指针(SP)确定,在指令中不需要指定。

6.在大多数情况下,一条机器指令中是不直接用二进制代码来指定 ( ) A.下一条指令的地址 B.操作的类型 C.操作数地址 D.结果存放地址 [答案]A

【解析】指令系统中可以用伪指令标识下一条将要运行的指令,这样可以使程序具有很好的可读性。

7.在存储器堆栈中,若栈底地址为A,SP指针初值为A--1,当堆栈采用从地址小的位置向地址大的位置生成时,弹出操作应是 ( ) A.先从堆栈取出数据,然后SP指针减

B.先从堆栈取出数据,然后SP指针加 C.SP指针先加1,然后从堆栈取出数据 D. SP指针先减1,然后从堆栈取出数据 [答案]A

【解析】堆栈是按特定顺序进行访问的存储区,其访问方式是后进先出,即先存入的数据后读出。对堆栈的访问由堆栈指针寄存器SP控制,当堆栈采用从地址小的位置向地址大的位置生成时,入栈操作是SP指针先加1,然后将数据存人堆栈,从堆栈取出弹出操作是先从堆栈取出数据,然后SP指针减1。

8.转移指令执行结束后,程序计数器PC中存放的是 ( ) A.该转移指令的地址 B.顺序执行的下一条指令地址 C.转移的目标地址 D.任意指令地址 [答案]C

【解析】转移指令执行过程中,将转移指令所指的子程序的起始地址装入PC,因此转移指令执行结束后,程序计数器PC中存放的是转移的目标地址。 二、填空题

1.如指令中给出形式地址为D,则间接寻址方式获得操作数的有效地址为_ ___。 [答案] 以D为地址的存储单元的内容

【解析】在存储器间接寻址方式中,操作数的地址在主存储器中,其存储器地址在指令中给出。也就是说在指令中给出的既不是操作数,也不是操作数的地址,而是操作数地址的地址,则有效地址为以形式地址D为地址的存储单元的内容。

2.如果说变址寻址方式主要是面向用户的,那么基址寻址一般是面向_ ___的。 [答案]系统

【解析】变址寻址方式是面向用户的,常用于访问字符串、向量数据结构和循环程序设计;而基址寻址方式是面向系统的,对由逻辑地址空间到物理地址空间的变换提供支持,用以解决程序在存储器中再定位和扩大寻址空间等问题。 3.在寄存器寻址方式中,指定寄存器中存放的是_ ___ 。 [答案]操作数

【解析】在寄存器间接寻址方式中,指定寄存器中存放的是操作数地址;而在寄存器寻址方式中,指定寄存器中存放着操作数。

4.在计算机中,各指令周期的时间长度是_ ___的。 [答案]不相同

【解析】在计算机中,由于指令的种类不同,功能不同,执行每条指令时机器所进行的操作可能就不同,所需要的时间长短也可能不相同,所以各指令周期的时间长度不一定相同。

5.转移指令执行结束后,目标地址放在_ ___中。 [答案]程序计数器PC

【解析】转移指令执行过程中,将转移指令所指的子程序的起始地址装入PC,因此转

cs0?A12A11 CS1?A12A11 CS2?A12A11 CS3?A12A11

由上要注意的是:①地址线条数的计算,多少条片内地址线,多少条片选,多少条空 闲。②不要漏掉控制线。③画图注意布局,要规整、清晰。

【解析】用2K×4位/片的RAM存储芯片构成一个8KB(8K×8位)的存储器,所需的芯片数量为:(8K×8)/(2K×4)=8片,每两片作为一组共4组,每组内采用位扩展法组成一个2K×8的模块,4个2K×8的模块按字扩展法构成8K×8的存储器,即8KB的存储器。此存储器的容量为8KB,需13位地址(213?8K),选用A12?A0作为地址线,A13,A14A15不用,

各芯片的容量均为2K,需11位地址,用A10~A0向每个芯片提供地址,A11,A12通过一个2--4译码器对4个模块进行选择,每个输出控制一个模块内的两个芯片,各个模块的片选控制信号CS对应的输入分别为:00,01、10,11、WE作为所有芯片的读写控制信号,D7?D0为8条数据线。

3.用64×4位/片的SRAM存储器芯片设计一个总容量为256字节存储器,CPU地址总线为,双向数据总线D7~D0(低位),读写控制信号为R/W,芯片的片选A15~A0(低位)

控制信号为CS。请写出片选信号逻辑式,绘出该存储器逻辑框图,注明各信号线。

[答案]需的芯片数量为:(256×8)/(64×4)一8片,用A5~A0向每个芯片提供地址,

A6,A7用于片选。

【解析】用64×4位/片的RAM存储芯片构成一个256×8位的存储器,所需的芯片数量为:(256×8)/(64×4)--8片,每两片作为一组共4组,每组内采用位扩展法组成一个64X8的模块,4个64×8;的模块按字扩展法构成256×8位的存储器。此存储器的容量为256,需8位地址2?256,选用A7?A0作为地址线,,各芯片的容量均为64,需6位地址,用A5~A0向每个芯片提供地址,A6,A7通过一个2—4译码器对4个模块进行选择,每个输出控制一个模块内的两个芯片,各个模块的片选控制信号CS对应的输入分别为:00、01、10、11,作为所有芯片的读写控制信号,D7?D0为8条数据线。

8

指示性语句是主要由命令(亦称伪指令)构成的语句,用来指示汇编程序进行汇编操作,其格式为:

[名字/变量]命令参数[;注释]

其中命令指示汇编程序进行某种汇编操作,参数是有关的数据,带方括号的项是任选的。

如上例的第1语句行

DATA SEGMENT AT 2000H

其中命令SEGMENT指出这是一个段的开始,参数AT 2000H指定该段的段基值为2000H,而DATA则是该段的名字一段名,为一个16位的立即数,即该段的段基值,本例中即为2000H。

又如上例的第5语句行 DATA ENDS

则表明了段名为DATA的段的结束。

指令性语句的应用使程序员编程时不需进行很多计算,既方便又简化了编程212作。 2.分析下列语句完成之后内存单元的分配情况: DATA2 DB 2f-DUP_ (12H,34H,56H) [答案]此时内存分配为:

段基值 2000H 偏移地址 0000H 0001H 0002H 0003H 0004H 0005H 12H 34H 56H 12H 34H 56H 【解析】DB是一个伪指令,它的作用是定义一个字节的存储空间,而DW是定义2个字节一个字的空间,它们后面可以用参数来写将要定义的数据,其中参数就是相应内存单元中的数据,它可以是常量(可用各种规定的数制表示)、字符常量.(用单引号括起来的ASCII字符)或已定义的符号常量,当它用作保留单元以备存人有关数据时就以问号(?)表示。参数商以有多个,相互间要用逗号(,)隔开,若连续多个数据是重复的,就可应用复 制符DUP以简化书写,DUP的用法为: 复褂次数DUP(数据)

其中数据可以不止一个,且数据还可有复制部分。 3.用宏指令完成2数相乘的操作。 [答案]

宏定义:MULTIPLY MACRO OPR1,OPR2,RESULT PUSH AX MOV AI,OPR1

IMUL OPR2 MOV RESULT,AX POP AX ENDM 宏高用; 程序

?

MULTIPLY

CL,VAR,XYZ[BX];实参数CL是寄存器,VAR是变量,XYZ[BX]

;是相对基址的内存操作数,实参数240 ;是立即数,BL是寄存器,SAVE是变量

? ?

MULTIPLY 宏展开: 程序

240,BL,SAVE

?

PUSH MOV IMUL MOV POP

AX AL,CL VAR

XYZ[BX],AX AX

?

PUSH MOV IMUL MOV POP

AX AL,240 BL SAVE,AX AX

?

【解析】在这个宏定义的过程中,用了三个形式参数OPRI,OPR2和RESULT,它们都是宏体指令中的操作数。汇编,程:序将此宏展开后的程序转换成机器码!生成目标程序。

在使用宏的时候要注意宏指令与子程序的差别:

宏指令是将一段程序;(指令序列)用一条宏指令来代替,以简化书写源程序,子程序也有类似的功能,但两者是有差别的,具体如下: (1)宏指令简化了源程序的书写。

但在汇编时,汇编程序对宏指令的汇编处理是将宏指令的宏体(即程序段)原原本本的插入到宏指令调用处,然后转换成机器码生成目标程序。因此,宏指令虽简化了源程序,但并没有简化目标程序,有多少次宏调用,在目标程序中就有同样多少次数目的目标代码插入。所以宏指令并不节省目标程序所占用的内存单元。

子程序(过程)在执行时是由CPU用调用(CALL)来处理的。若在一个源程序中多次调

用同一个子程序,则在目标程序中,主程序中只有调用(CALL)指令的目标代码,CALL指令的目标代码只有几个字节;该目标代码出现的次数就是调用次数。而子程序的目标代码在整个目标程序中只出现一次,所以相应的其目标程序就占用较少的内存单元,即可节省内存单元。

(2)采用子程序方式时,每调用一次就需执行一次CALL和RET指令,而宏指令方式时,并无此两条命令。因此,宏指令时的程序执行时间比子程序时的程序执行时间要短一点,V即宏指令时程序执行速度快。

由上面可知,宏指令和程序各有特点,宏指令执行速度快而子程序占用内存少。一般,对予程序段较长韵精沉&嚣用哥程痛珂节3省很多内存而对执行速度影响不大;对于程序段较短的情况,采用宏指令可加快速度而对增加占用内存客量影响不大,尤其对予程序段较短而形式参数较多的情况,宏指令就更能显示其突出的优点。

第四章 微型计算机的内存及其与CPU的连接

本章主要介绍了微型计算机存储器的分类、指标以及半导体存储器的工作原理和应用,IBM-- PC微型计算机存储器的配置和管理,通过本章的学习,要求考生能从整体上了解这些基础理论,在此基础上,能对实际的微机存储器进行管理和设计。

一、重点提示

本章的重点是了解存储器的分类,SRAM,DRAM和EPROM的工作原理,在此基础上,掌握CPU与存储器的连接原则,IBM--PC计算机存储器的组成,了解内存管理模式。 二、难点提示

高档PC机内存中常规内存,高端内存,上位内存,扩展内存的概念以及对这些概念的理解。

1.概述

(1)计算机中存储器的分类:内存和外部存储器(光存储器,磁盘存储器等) (2)半导体存储器的分类 (3)半导体存储器的指标 2.随机读写存储器RAM

(1)静态存储器SRAM的工作原理和典型芯片 (2)动态存储器DRAM的工作原理和典型芯片 3.只读存储器ROM (1)、掩模ROM

(2)可擦可编程只读存储器EPROM的工作原理,EPROM典型芯片 (3)电擦可编程只读存储器EEPROM的工作原理 4.CPU与存储器的连接 (1)连接时应注意的问题 (2)典型CPU与存储器的连接 5.IBMPC/XT中的存储器 6.扩展存储器及其管理

熟悉这些基本概念:

1.DRAM=动态随机访问存储器,利用电容电荷存储信息。

2.逻辑地址:程序员编程所用的地址以及CPU通过指令访问主存时所产生的地址。

3.随机存取方式:可按地址访问存储器任一编址单元,其访问时间相同且与地址无关。 4.RAM:随机访问存储器,能够快速方便地访问地址中的内容,访问的速度与存储位置无关。

5.ROM:只读存储器,一种只能读取数据不能写入数据的存储器。 6.SRAM:静态随机访问存储器,采用双稳态电路存储信息。 7.DRAM=动态随机访问存储器,利用电容电荷存储信息。

8.NVRAM=非易失RAM,或掉电自保护RAM,在掉电或电源有故障的瞬间,它把 SRAM的信息保存在EEPROM中,从而使信息不会丢失。 9.PROM:可编程的ROM,可以被用户编程一次。

10. EPROM:可擦可编程只读存储器ROM,可以:被用户编程多次。靠紫外线激发浮置栅上的电荷以达到擦除的目的。

11. EEPROM.电擦可编程只读存储器ROM,能够甩电子的方法擦除其中的内容。 12.快闪存储器:一种非挥发性存储器,与EEPROM类似,能够用电子的方法擦除其中的内容。

13.虚拟存储器:是一种技术,它提供比物理存储器大得多的存储空间,使编程人员在写程序时,不用考虑计算机的实际容量,可以写出比任何实际配置的物理存储器都大很多的程序。

14.段式管理:一种虚拟存储器的管理方式,把虚拟存储空间分成段,段的长度可以任意设定,并可以放大或缩小。

15.页式管理:一种虚拟存储器的管理方式,把虚拟存储空间.和实际存储空间等分成固定容量的页,需要时装人内存,各页可装入主存中不同的实际页面位置。

16.段页式管理:一种虚拟存储器的管理方式,将存储空间逻辑模块分成段,每段又分成若干页。

17.两级页表机构:为节约内存,分为两级页表机构,第一级用1K个表项,每项4个字节,占4KB内存。第二级再用10位,这样两级表组合起来即可达到1MB个表项。 18.物理地址:用分页机制把线性地址转换得到的地址。

19.线性地址空间:80386先使用段机制,把包含两个部分的虚拟地址空间转换为一个

中间地址空间的地址,这一中间地址空间称为线性地址空间。

20.内存:把具有一定容量、存取速度快的存储器称为内部存储器,简称为内存。 21.外存:把存储容量大而速度较慢的存储器称为外部存储器,简称外存。 22.存储器的容量:每个存储器芯片所能存储的二进制数的位数。

23.HMA:利用HIMEM. SYS即可驱动位于1024~1088K的64KB内存,这一段内存叫高位内存区,简称HMA。

24.EMS:是XMS中的存储器,但它是利用扩充存储器的管理程序进行管理的XMS。 25.上位存储器:内存保留区的存储器。

26.影子存储器:把执行速度慢的ROM BIOS程序放到执行速度快的DRAM中执行,称为SHADOW RAM,即影子存储器。

27.扩展存储器:PC机的地址在I00000H以上的“存储器称为扩展存储器,也叫XMS。 28.主存储器:为保持兼容性,把地址范围“0~9FFFFH的640KB内存叫主存储器。 29.内存保留区:在PC机中,主存储器以外的,地址从A0000H~FFFFFH的384KB内存叫内存保留区。

30.字节编址结构:在各种微型计算机系统中,字长有8位、16位或32位之分,可是存储器均以字节为基本存储单元,存储1个16位或32位数据,就要放在连续的几个内存单元中,这种存储器就是字节编址结构。 31.段属性:如可读出或写入的特权级等。 32.段的基地址:即线性空间中段的开始地址。

33.段的界限:段内可以使用的最大偏移量,它指明该段的容量大小。

34.保护:所谓保护有两个含义,一是每一个任务分配不同的虚地址空间,使任务之间完全隔离,实现任务间的保护。二是任务内的保护机制,保护操作系统存储段及其专用处理寄存器不被应用程序所破坏。

一、单项选择题

1.动态半导体存储器的特点是 ( ) A.在工作中存储器内容会产生变化

B.每次读出后,需要根据原存内容重新写入一遍 C.每隔一定时间,需要根据原存内容重新写入一遍 D.在工作中需要动态地改变访存地址 [答案]C

【解析】动态半导体存储器是利用电容存储电荷的特性记录信息,由于电容会放电,必须在电荷流失前对电容充电,即刷新。方法是每隔一定时间,根据原存内容重新写入一遍。

2.当高速缓冲存储器容量为32KB时,其命中率为 ( )

A.92%

B.80%

C.90%

[答案]D

【解析】CPU访问高速缓冲存储器,找到所需信息的百分比称为命中率。当高速缓冲存储器容量为32KB时,其命中率为86%,当高速缓冲存储器容量为64KB时,其命中率为92%。 3.若存储周期250ns,每次读出16位,则该存储器的数据传送率为 [ )

A.4?10字节/秒 C.8?10字节/秒 [答案]C

【解析】存储周期250ns,换算为250?10秒;每个存储周期可读出16位,为两个字节,则数据传送率为:2字节/(250?10)秒,即8?10字节/秒。 4.半导体静态存储器、SRAM的存储原理是 ( ) A.依靠双稳态电路 B.依靠定时刷新

C.依靠读后再生 D.信息不再变化 [答案]A

【解析】半导体静态存储器SRAM是由双稳态电路构成,并依靠其稳态特性来保存信息;动态存储器DRAM是利用电容器存储电荷的特性存储数据1,依靠定时刷新和读后再生对信息进行保存,而ROM中的信息一经写入就不再变化。 5.下列工作方式中,( )不是2816的工作方式。 A.读方式 B.写方;式 C.片擦除方式 D.掉电方式 [答案]D

【解析】2816是容量2KB的电擦除PROM,它有6中工作方式,即读方式。备用方式,字节擦除方式,写方式,片擦除方式,擦写禁止方式。 6.下列存储器中,( )速度最快。 A.硬盘 B.光盘 C.磁带 D.半导体存储器 [答案]D

【解析】由于存储器原理和结构的不伺,各种存储器的访问速度各不相同。以上存储器中访问速度由快到慢的顺序为:半导体存储器、硬盘、光盘、磁带。 7.( )方式是80286~80486最基本的工作方式。 A.实地址 B.虚地址保护 C.V86 D.X86 [答案]A

【解析】80386、80486微处理器支持三种工作方式,即实地址方式、虚地址保护方式、

?96?966 D.86%

B.4M字节/秒 D.8M字节/秒

V86方式,80286只有两种工作方式,8088/8086只工作在实地址方式。实地址方式是80286~80486最基本的工作方式,寻址范围只能在1MB范围内,故不能管理和使用扩展存储器。 8.表示主存容量的常用单位为 ( ) A.数据块数 B.字节数 C.扇区数 D.记录项数 [答案]B

【解析】表示主存容量的常用单位字节B,是基本单位。此外还有KB、MB、GB、TB。 9.存储器的随机访问方式是指 ( ) A.可随意访问存储器 B.按随机文件访问存储器 C.可对存储器进行读出与写入

D.可按地址访问存储器任一编址单元,其访问时间相同且与地址无关 [答案]D

【解析】存储器的随机访问方式是指可按地址访问存储器任一编址单元,其访问时间相同且与地址无关。

10.动态存储器的特点是 ( ) A.工作中存储内容会产生变化 B.工作中需要动态改变访存地址 C.工作中需要动态地改变供电电压 D.需要定期刷新每个存储单元中存储的信息 C.片擦除方式 D.掉电方式 [答案]D

【解析】2816是容量2KB的电擦除PROM,它有6中工作方式,7即读方式,备用方式,字节擦除方式,写方式,片擦除方式,擦写禁止方式。 6.下列存储器中,( )速度最快。 A.硬盘 B.光盘 C.磁带 D.半导体存储器 [答案]D

【解析】由于存储器原理和结构的不同,各种存储器的访问速度各不相同。以上存储器中访问速度由快到慢的顺序为:半导体存储器、硬盘、光盘、磁带。 7.( )方式是80286~80486最基本的工作方式。 A.实地址 B.虚地址保护 C.V86 D.X86 [答案]A

【解析】80386、80486微处理器支持三种工作方式,即实地址方式、虚地址保护方式、V86方式,80286只有两种工作方式,8088/8086只工作在实地址方式。实地址方式是80286~80486最基本的工作方式,寻址范围只能在1MB范围内,故不能管理和使用扩展存储器。

8.表示主存容量的常用单位为 ( ) A.数据块数 B.字节数 C.扇区数 D.记录项数 [答案]B

【解析】 表示主存容量的常用单位字节B,是基本单位。此外还有KB、MB、GB、TB。 9.存储器的随机访问方式是指 ( ) A.可随意访问存储器 B.按随机文件访问存储器 C.可对存储器进行读出与写入

D.可按地址访问存储器任一编址单元,其访问时间相同且与地址无关 [答案]D

【解析】存储器的随机访问方式是指可按地址访问存储器任一编址单元,其访问时间相同且与地址无关。

10.动态存储器的特点是 ( ) A.工作中存储内容会产生变化 B.工作中需要动态改变访存地址 C.工作中需要动态地改变供电电压 D.需要定期刷新每个存储单元中存储的信息 [答案]D

【解析】此题与2000年考题基本相同。动态半导体存储器是利用电容存储电荷的特性记录信息,由于电容会放电,必须在电荷流失前对电容充电,即刷新。方法是每隔一定时间,根据原存内容重新写入一遍。 二、填空题

1.计算机中存储器根据处于微机的位置可以分成:____ 和____ 两大部分。

[答案] 内部存储器外部存储器

【解析】存储器的分类根据所在位置可以分成:内部存储器、外部存储器、软盘、硬盘和光盘存储器都属于外存,要配有驱动器,才能对它们进行读写。硬盘和光盘容量很大。 根据制造工艺的角度分:双极型、CMOS型、HMOS型。

从应用角度分:随机读写存储器(RAM)、只读存储器(ROM)。 V 2.分析整理常用存储器芯片的容量,地址线和数据线的个数。

[答案]

【解析】常见存储器芯片的技术资料是重点掌握的基础知识。

3.可擦可编程只读存储器是____ ,利用____ 方法擦除内部信息;电擦可编程只读存储

器是____ ,利用____ 方法可擦除其中内容。

[答案] EPROM 用紫外线光照射20rain紫外线激发浮置栅上的电荷 EEPROM;加特定的编程电压。

【解析】+EPROM:可擦可编程只读存储器。ROM,可以被用户编程多次。靠紫外线激发浮置栅上的电荷以达到擦除的目的。

EEPROM:电擦可编程只读存储器ROM,能够用电子的方法擦除其中的内容。 4.DRAM需要刷新的原因是____ 。 [答案] 电容漏电

【解析】DRAM的存储单元以电容为基础,电容中电荷由于漏电会逐渐丢失,因此需定时刷新。

5.说说常规内存、上位内存、扩展内存、高端内存的含义。

[答案] 常规内存:地址范围0~9FFFFH的640KB内存叫主存储器。

上位内存:内存保留区有很多存储空间是空闲的,DOS5.0~DOS6.2版本的应用程序设法把这部分空间利用起来,这时的内存保留区的存储器就称为上位存储器UMBs。 扩展内存:地址在I00000H以上的存储器称为扩展存储器。 高端内存:位于1024~1088K的64KB内存,简称HMA。

【解析】这些内容是实际计算机中连接很多的知识结构,是一个需要理论联系实际的内容,是这部分的难点。

6.地址线A15~A0(低),若选取用16K×1存储芯片构成64KB存储器则应由地址码译码产生片选信号。 [答案]A15、A14

【解析】用16K×1芯片构成64KB的存储器,需要的芯片数量为:(64K×8)/(16K×1) =32,每8片一组分成4组,每组按位扩展方式组成一个16KX8位的模块,4个模块按字扩展方式构成64KB的存储器。存储器的容量为64K?2,需要16位地址,选用A15?A0为地址线;每个模块的容量为16K?2需要14位地址,选用A13?A0为每个模块提供地址;

1416A15、A14通过2--4译码器对4个模块进行片选。

7.有静态RAM与动态RAM可供选择,在构成大容量主存时,一般就选择____ 。 [答案] 动态RAM

【解析】静态RAM特点是存取速度快,单位价格(每字节存储空间的价格)较高;动态RAM则是存取速度稍慢,单位价格较低。所以考虑价格因素,在构成大容量的存储器时一般选择动态存储器。

8.静态数据存储器6116(2K×8)片内有____ 存储单元,需要____ 根地址线,每个存储单元内有____ 个基本存储电路,需要____ 条数据线访问。 [答案] 2K 11 8.8

【解析】这样的题型很典型,也是分析存储器扩展的基础。主要的解题方法是,看括号中乘号之前是2的几次乘方,那么就需要几根地址线,乘号之后的数字是几,芯片就有几条数据线。 三、综合应用题

1.用1K×4片的存储芯片构成一个4K×8的存储器,地址线A15~A0(低),双向数据线

D7~D0,WE控制读写,CE为片选输入端。画出芯片级逻辑图,注明各种信号线,列出片

选逻辑式。 [答案]

各片选信号的逻辑式为:

cs0?A11A10CS1?A11A10 CS2?A11A10cs3?A11A10

【解析】用1K×4位/片的存储芯片构成一个.4K×8的存储器,所需的芯片数量为:(4K×8)/(1K×4)=8片,每两片作为一组共4组,每组内采用位扩展法组成一个1K×8的模块,4个1K×8的模块按字扩展法构成4K×8的存储器。此存储器的容量为4KB,需12位地址,选用A11?A0作为地址线,A12?A15不用,各芯片的容量均为IK,需10位地址,用A9?A0向每个芯片提供地址,A|0、A11通过一个2--4译码器对4个模块进行选择,每个输出控制一个模块内的两个芯片,各个模块的片选控制信号对应的输入分别为:00、01、10、11,WE作为所有芯片的读写控制信号,D7?D0为8条数据线。

2.用2K×4位/片的RAM存储芯片构成一个8KB的存储器,地址总线为A12(高位)~A0(低位),数据总线D7(高位)~D0(低位),控制读写。请写出片选逻辑式,画出芯片级逻辑图,注意各信号线。 [答案]

本文来源:https://www.bwwdw.com/article/x6qf.html

Top