微机原理与接口技术(楼顺天第二版)第六章习题解答
- 格式:doc
- 大小:1.18 MB
- 文档页数:15
微机原理与接口技术(第二版)课后习题答案微机原理与接口技术(第二版)课后题答案第1章作业答案1.1 微处理器、微型计算机和微型计算机系统的区别是什么?微处理器是将CPU集成在一个芯片上,微型计算机是由微处理器、存储器和外部设备构成,而微型计算机系统则是微型计算机与管理、维护计算机硬件以及支持应用的软件相结合的系统。
1.2 CPU的内部结构由哪些部分组成?它应该具备哪些主要功能?CPU主要由算术逻辑单元、指令寄存器、指令译码器、可编程逻辑阵列和标志寄存器等寄存器组成。
它的主要功能是进行算术和逻辑运算以及控制计算机按照程序的规定自动运行。
1.3 采用总线结构的微型计算机有哪些优点?采用总线结构可以扩大数据传送的灵活性,减少连线。
此外,总线可以标准化,易于兼容和工业化生产。
1.4 数据总线和地址总线在结构上有什么不同?如果一个系统的数据和地址合用一套总线或者合用部分总线,那么要靠什么来区分地址和数据?数据总线是双向的,而地址总线是单向的。
如果一个系统的数据和地址合用一套总线或者部分总线,就要靠信号的时序来区分。
通常在读写数据时,总是先输出地址,过一段时间再读或写数据。
1.8 给定一个模型,如何用累加器实现15×15的程序?LD A。
15LD H。
15LOOP: ADD A。
15DEC HJP NZ。
LOOPHALT第2章作业答案2.1 IA-32结构微处理器直至Pentium 4,有哪几种?IA-32结构微处理器有、、Pentium、Pentium Pro、Pentium II、Pentium III和Pentium 4.2.6 IA-32结构微处理器有哪几种操作模式?IA-32结构支持保护模式、实地址模式和系统管理模式三种操作模式。
操作模式决定了哪些指令和结构特性可以访问。
2.8 IA-32结构微处理器的地址空间是如何形成的?由段寄存器确定的段基地址与各种寻址方式确定的有效地址相加形成了线性地址。
微机原理与接口技术(第二版)课后习题答案完整版标准化文件发布号:(9312-EUATWW-MWUB-WUNN-INNUL-DQQTY-习题11.什么是汇编语言,汇编程序,和机器语言答:机器语言是用二进制代码表示的计算机能直接识别和执行的一种机器指令的集合。
汇编语言是面向及其的程序设计语言。
在汇编语言中,用助记符代替操作码,用地址符号或标号代替地址码。
这种用符号代替机器语言的二进制码,就把机器语言编程了汇编语言。
使用汇编语言编写的程序,机器不能直接识别,要由一种程序将汇编语言翻译成机器语言,这种起翻译作用的程序叫汇编程序。
2.微型计算机系统有哪些特点具有这些特点的根本原因是什么答:微型计算机的特点:功能强,可靠性高,价格低廉,适应性强、系统设计灵活,周期短、见效快,体积小、重量轻、耗电省,维护方便。
这些特点是由于微型计算机广泛采用了集成度相当高的器件和部件,建立在微细加工工艺基础之上。
3.微型计算机系统由哪些功能部件组成试说明“存储程序控制”的概念。
答:微型计算机系统的硬件主要由运算器、控制器、存储器、输入设备和输出设备组成。
“存储程序控制”的概念可简要地概括为以下几点:①计算机(指硬件)应由运算器、存储器、控制器和输入/输出设备五大基本部件组成。
②在计算机内部采用二进制来表示程序和数据。
③将编好的程序和原始数据事先存入存储器中,然后再启动计算机工作,使计算机在不需要人工干预的情况下,自动、高速的从存储器中取出指令加以执行,这就是存储程序的基本含义。
④五大部件以运算器为中心进行组织。
4.请说明微型计算机系统的工作过程。
答:微型计算机的基本工作过程是执行程序的过程,也就是CPU自动从程序存放的第1个存储单元起,逐步取出指令、分析指令,并根据指令规定的操作类型和操作对象,执行指令规定的相关操作。
如此重复,周而复始,直至执行完程序的所有指令,从而实现程序的基本功能。
5.试说明微处理器字长的意义。
答:微型机的字长是指由微处理器内部一次可以并行处理二进制代码的位数。
微机原理与接口技术楼顺天周佳社编著科学出版社找了好久,终于在期末从老师那儿弄了一份,希望对大家有用!5章习题1.微处理器的外部结构表现为数量有限的输入输出引脚,它们构成了微处理器级总线。
2.微处理器级总线经过形成电路之后形成了系统级总线。
3.简述总线的定义及在计算机系统中采用标准化总线的优点。
答:总线是计算机系统中模块(或子系统)之间传输数据、地址和控制信号的公共通道,它是一组公用导线,是计算机系统的重要组成部分。
采用标准化总线的优点是:1)简化软、硬件设计。
2)简化系统结构。
3)易于系统扩展。
4)便于系统更新。
5)便于调试和维修。
4.在微型计算机应用系统中,按功能层次可以把总线分成哪几类。
答:在微型计算机应用系统中,按功能层次可以把总线分成:片内总线、元件级总线、系统总线和通信总线。
5.简述RESET信号的有效形式和系统复位后的启动地址。
答:RESET为系统复位信号,高电平有效,其有效信号至少要保持四个时钟周期,且复位信号上升沿要与CLK下降沿同步。
系统复位后的启动地址为0FFFF0H。
即:(CS)=0FFFFH,(IP)=0000H。
M/信号在访问存储器时为高电平,访问I/O端口时为低电平。
6.8086 CPU的IO7.在8086系统总线结构中,为什么要有地址锁存器?答:8086CPU有20条地址线和16条数据线,为了减少引脚,采用了分时复用,共占了20条引脚。
这20条引脚在总线周期的T1状态输出地址。
为了使地址信息在总线周期的其他T状态仍保持有效,总线控制逻辑必须有一个地址锁存器,把T1状态输出的20位地址信息进行锁存。
8.根据传送信息的种类不同,系统总线分为数据总线、地址总线和控制总线。
9.三态逻辑电路输出信号的三个状态是高电平、低电平和高阻态。
10. 在8086的基本读总线周期中,在1T 状态开始输出有效的ALE 信号;在2T 状态开始输出低电平的RD 信号,相应的DEN 为__低__电平,R DT /为__低__电平;引脚AD 15 ~ AD 0上在1T 状态期间给出地址信息,在4T 状态完成数据的读入。
第六章存储器系统本章主要讨论内存储器系统,在介绍三类典型的半导体存储器芯片的结构原理与工作特性的基础上,着重讲述半导体存储器芯片与微处理器的接口技术。
6.1 重点与难点本章的学习重点是8088的存储器组织;存储芯片的片选方法(全译码、部分译码、线选);存储器的扩展方法(位扩展、字节容量扩展)。
主要掌握的知识要点如下:6.1.1 半导体存储器的基本知识1.SRAM、DRAM、EPROM和ROM的区别RAM的特点是存储器中信息能读能写,且对存储器中任一存储单元进行读写操作所需时间基本上是一样的,RAM中信息在关机后立即消失。
根据是否采用刷新技术,又可分为静态RAM(SRAM)和动态RAM(DRAM)两种。
SRAM是利用半导体触发器的两个稳定状态表示“1”和“0”;DRAM是利用MOS管的栅极对其衬间的分布电容来保存信息,以存储电荷的多少,即电容端电压的高低来表示“1”和“0”;ROM的特点是用户在使用时只能读出其中信息,不能修改和写入新的信息;EPROM可由用户自行写入程序和数据,写入后的内容可由紫外线照射擦除,然后再重新写入新的内容,EPROM可多次擦除,多次写入。
一般工作条件下,EPROM 是只读的。
2.导体存储器芯片的主要性能指标(1)存储容量:存储容量是指存储器可以容纳的二进制信息量,以存储单元的总位数表示,通常也用存储器的地址寄存器的编址数与存储字位数的乘积来表示。
(2)存储速度:有关存储器的存储速度主要有两个时间参数:TA:访问时间(Access Time),从启动一次存储器操作,到完成该操作所经历的时间。
TMC:存储周期(Memory Cycle),启动两次独立的存储器操作之间所需的最小时间间隔。
(3)存储器的可靠性:用MTBF—平均故障间隔时间(Mean Time Between Failures)来衡量。
MTBF越长,可靠性越高。
(4)性能/价格比:是一个综合性指标,性能主要包括存储容量、存储速度和可靠性。
《16/32位微机原理、汇编语言及接口技术·第2版》习题解答第1章微处理器指令系统〔习题1.1〕微型计算机到目前为止已发展了几代?给出各代微机的特点和典型的微处理器。
〔解答〕〔习题1.2〕什么是微型计算机?PC机、单片机和数字信号处理器的含义各是什么?〔解答〕⏹微型计算机:以大规模、超大规模集成电路为主要部件,以集成了计算机主要部件——控制器和运算器的微处理器为核心,所构造出的计算机系统⏹PC机:PC(Personal Computer)机就是面向个人单独使用的一类微机⏹单片机:用于控制的微处理器芯片,内部除CPU外还集成了计算机的其他一些主要部件,如:ROM、RAM、定时器、并行接口、串行接口,有的芯片还集成了A/D、D/A 转换电路等。
⏹数字信号处理器DSP:主要面向大流量数字信号的实时处理,在宿主系统中充当数据处理中心,在网络通信、多媒体应用等领域正得到越来越多的应用〔习题1.3〕微型计算机主要由哪些基本部件组成?各部件的主要功能是什么?〔解答〕CPU:存储器:外部设备:〔习题1.4〕什么是微机的系统总线?微机的总线结构为它带来了哪些好处?除电源和地线外,一般将总线分为哪3组信号?总线的使用特点是什么?〔解答〕⏹系统总线:传递信息的一组公用导线,CPU通过它们与存储器和I/O设备进行信息交换⏹好处:组态灵活、扩展方便⏹三组信号线:数据总线、地址总线和控制总线⏹其使用特点是:在某一时刻,只能由一个总线主控设备来控制系统总线,只能有一个发送者向总线发送信号;但可以有多个设备从总线上同时获得信号。
〔习题1.5〕简述微型计算机的两个主要应用方向及其应用特点。
〔解答〕⏹用于数值计算、数据处理及信息管理方向⏹采用通用微机,要求有较快的工作速度、较高的运算精度、较大的内存容量和较完备的输入输出设备,为用户提供方便友好的操作界面和简便快捷的维护、扩充手段。
⏹用于过程控制及嵌人应用方向⏹采用控制类微机,要求能抵抗各种干扰、适应现场的恶劣环境、确保长时间稳定地工作,要求其实时性要好、强调其体积要小、便携式应用强调其省电。
第3章8086CPU指令系统1.写出完成下列要求的变量定义语句:(1)在变量var1中保存6个字变量:4512H,4512,-1,100/3,10H,65530;(2)在变量var2中保存字符串:’BYTE’, ’word’, ’WORD’;(3)在缓冲区buf1中留出100个字节的存储空间;(4)在缓冲区buf2中,保存5个字节的55H,再保存10个字节的240,并将这一过程重复7次;(5)在变量var3中保存缓冲区buf1的长度;(6)在变量pointer中保存变量var1和缓冲区buf1的偏移地址。
解:var1 DW 4512H,4512,-1,100/3,10H,65530var2 DB ’BYTE’,’word’,’WORD’buf1 DB 100 DUP(?)buf2 DB 7 DUP(5 DUP(55H),10 DUP(240))var3 DB LENGTH buf1pointer DW var1,buf1 (或者pointer DW OFFSET var1,OFFSET buf1)2.设变量var1的逻辑地址为0100:0000,画出下列语句定义的变量的存储分配图:var1 DB 12,-12,20/6,4 DUP(0,55H)var2 DB ‘Assemble’var3 DW ‘AB’, ‘cd’, ‘E’var4 DW var2var5 DD var2解:3.指令正误判断,对正确指令写出源和目的操作数的寻址方式,对错误指令指出原因(设VAR1, VAR2为字变量, L1为标号):(1)MOV SI,100 (2)MOV BX,VAR1[SI](3)MOV AX, [BX] (4)MOV AL, [DX](5)MOV BP, AL (6)MOV VAR1, VAR2(7)MOV CS, AX (8)MOV DS, 0100H(9)MOV [BX][SI], 1 (10)MOV AX, VAR1+VAR2(11)ADD AX, LENGTH VAR1 (12)OR BL, TYPE VAR2(13)SUB [DI], 78H (14)MOVS VAR1, VAR2(15)PUSH 100H (16)POP CS(17)XCHG AX, ES (18)MOV DS, CS(19)JMP L1+5 (20)DIV AX, 10(21)SHL BL, 2 (22)MOV AL, 15+23(23)MUL CX (24)XCHG CL, [SI](25)ADC CS:[0100], AH (26)SBB VAR1-5,154解:(1)MOV SI,100 正确。
习题11.什么是汇编说话,汇编程序,和机械说话?答:机械说话是用二进制代码暗示的盘算机能直接辨认和履行的一种机械指令的聚集.汇编说话是面向及其的程序设计说话.在汇编说话中,用助记符代替操纵码,用地址符号或标号代替地址码.这种用符号代替机械说话的二进制码,就把机械说话编程了汇编说话.运用汇编说话编写的程序,机械不克不及直接辨认,要由一种程序将汇编说话翻译成机械说话,这种起翻译感化的程序叫汇编程序.2.微型盘算机体系有哪些特色?具有这些特色的根起源基本因是什么?答:微型盘算机的特色:功效强,靠得住性高,价钱低廉,顺应性强.体系设计灵巧,周期短.奏效快,体积小.重量轻.耗电省,保护便利.这些特色是因为微型盘算机普遍采取了集成度相当高的器件和部件,树立在微细加工工艺基本之上.3.微型盘算机体系由哪些功效部件构成?试解释“存储程序掌握”的概念.答:微型盘算机体系的硬件重要由运算器.掌握器.存储器.输入装备和输出装备构成.“存储程序掌握”的概念可扼要地归纳综合为以下几点:①盘算机(指硬件)应由运算器.存储器.掌握器和输入/输出装备五大根本部件构成.②在盘算机内部采取二进制来暗示程序和数据.③将编好的程序和原始数据事先存入存储器中,然后再启动盘算机工作,使盘算机在不须要人工干涉的情形下,主动.高速的从存储器中掏出指令加以履行,这就是存储程序的根本寄义.④五大部件以运算器为中间进行组织.4.请解释微型盘算机体系的工作进程.答:微型盘算机的根本工作进程是履行程序的进程,也就是CPU主动从程序存放的第1个存储单元起,慢慢掏出指令.剖析指令,并根据指令划定的操纵类型和操纵对象,履行指令划定的相干操纵.如斯反复,周而复始,直至履行完程序的所有指令,从而实现程序的根本功效.5.试解释微处理器字长的意义.答:微型机的字长是指由微处理器内部一次可以并行处理二进制代码的位数.它决议着盘算机内部存放器.ALU和数据总线的位数,反应了一台盘算机的盘算精度,直接影响着机械的硬件范围和造价.盘算机的字长越大,其机能越优胜.在完成同样精度的运算时,字长较长的微处理器比字长较短的微处理器运算速度快.6.微机体系中采取的总线构造有几种类型?各有什么特色?答:微机主板经常运用总线有体系总线.I/O总线.ISA总线.IPCI 总线.AGP总线.IEEE1394总线.USB总线等类型.7.将下列十进制数转换成二进制数.八进制数.十六进制数.①()10=()2=()8=()16②()10=()2=()8=()16③()10=()2=()8=()168.将下列二进制数转换成十进制数.①()2=()10②()2=()10③()2=()109.将下列十进制数转换成8421BCD码.① 2006=(0010 0000 0000 0110)BCD② 123.456=(0001 0010 0011.0100 0101 0110)BCD10.求下列带符号十进制数的8位基2码补码.① [+127]补=01111111② [-1]补=11111111③ [-128]补=10000000④[+1]补=0000000111.求下列带符号十进制数的16位基2码补码.① [+655]补= 0000001010001111② [-1]补③ [-3212]补④[+100]补=0000000001100100习题 21.8086 CPU在内部构造上由哪几部分构成?各部分的功效是什么?答:8086 CPU内部由两大自力功效部件构成,分离是履行部件和总线接口部件.履行部件负责进行所有指令的解释和履行,同时治理有关的存放器.总线接口部件是CPU在存储器和I/O装备之间的接口部件,负责对全体引脚的操纵.2.简述8086 CPU的存放器组织.答:8086 CPU内部共有14个16位存放器,按用处可分为数据存放器,段存放器,地址指针与变址存放器和掌握存放器.数据存放器包含累加器,基址存放器,计数器,和数据存放器.段存放器用来存放各分段的逻辑段基值,并指导当前正在运用的4个逻辑段.地址指针与变址存放器一般用来存放主存地址的段内偏移地址,用于介入地址运算.掌握存放器包含指令存放器和标识存放器.3.试述8086 CPU标记存放器列位的寄义与感化.答:标记存放器是16位的存放器,但现实上8086只用到9位,个中的6位是状况标识位,3位是掌握标识位.状况标记位分离是CF,PF,AF,ZF,SF,和OF;掌握标记位包含DF,IF,TF.CF:进位标记位.算数运算指令履行后,若运算成果的最高位产生进位或借位,则CF=1,不然CF=0.PF:奇偶标记位.反响盘算成果中1的个数是偶数照样奇数.若运算成果的低8位中含有偶数个1,则PF=1;不然PF=0.AF:帮助进位标记.算数运算指令履行后,若运算成果的低4位向高4位产生进位或借位,则AF=1;不然AF=0.ZF:零标记位.若指令运算成果为0,则ZF=1;不然ZF=0.SF:符号标记位.它与运算成果最高位雷同.OF:溢出标记位.当补码运算有溢出时,OF=1;不然OF=0.DF:偏向标记位.用于串操纵指令,指令字符串处理时的偏向.IF:中止许可标记位.用来掌握8086是否许可吸收外部中止请求.TF:单步标记位.它是为调试程序而设定的陷阱掌握位.4.8086 CPU状况标记和掌握标记有何不合?程序中是如何运用这两类标识的?8086的状况标记和掌握标识分离有哪些?答:状况标记位反响了当前运算和操纵成果的状况前提,可作为程序掌握转移与否的根据.它们分离是CF,PF,AF,ZF,SF,和OF.掌握标记位用来掌握CPU 的操纵,由指令进行置位和复位,掌握标记位包含DF,IF,TF.5.将1001 1100和1110 0101相加后,标识存放器中CF, PF, AF, ZF, SF, OF各为何值?答:CF=1,PF=1,AF=1,ZF=0,SF=1,OF=06.什么是存储器的物理地址和逻辑地址?在8086体系中,若何由逻辑地址盘算物理地址?答:逻辑地址是思维性的暗示,由段地址和偏移地址结合暗示的地址类型叫逻辑地址.物理地址是真实消失的独一地址,指的是存储器中各个单元的单元号.在8086体系中,物理地址=段地址×10H+偏移地址7.段存放器CS=1200H,指令指针存放器IP=4000H,此时,指令的物理地址为若干?指向这一地址的CS指和IP值是独一的吗?答:此指令的物理地址=1200H×10H+4000H=16000H 并且指向这一物理地址的CS值和IP值其实不是独一的.8.在8086体系中,逻辑地址FFFF:0001,00A2:37F和B800:173F的物理地址分离是若干?答:9.在8086体系中,从物理地址388H开端次序存放下列3个双字节的数据651AH,D761H和007BH,请问物理地址388H,389H,38AH,38BH,38CH和38DH 6个单元平分离是什么数据?答:(388H)=1AH,(389H)=65H,(38AH)=61H,(38BH)=DTH,(38CH)=7BH,(38DH)=00H10.8086微处理器有哪几种工作模式?各有什么特色?答:8086微处理器有最大和最小工作模式.在最小模式下:8086 CPU直接产生全体总线掌握旌旗灯号(DT/R,DEN,ALE,M/IO)和敕令输出旌旗灯号(RD,WR,INTA)并提出请求拜访总线的逻辑旌旗灯号HOLD,HLDA.在最大工作模式下,必须设置装备摆设8288总线掌握器,并且根据8086供给的状况旌旗灯号S2,S1,S0,输出读写掌握敕令,可以供给灵巧多变的体系设置装备摆设,以实现最佳的体系机能.11.简述8086引脚旌旗灯号中M/IO,DT/R,RD,WR,ALE,DEN和BHE的感化.答:M/IO:输出旌旗灯号,高电日常平凡,暗示CPU与存储器之间数据传输;低电日常平凡,暗示CPU与I/O装备之间数据传输.DT/R:掌握其数据传输偏向的旌旗灯号.DT/R=1时,进行数据发送;DT/R=0时,进行数据吸收.RD:CPU的读旌旗灯号,RD=0时,暗示8086为存储口或I/O端口读操纵.WR:CPU的写旌旗灯号,WR =0时,暗示8086为存储口或I/O端口写操纵.ALE:地址存锁旌旗灯号,在T1能时刻有效.DEN:数据选通讯号,当DEN有效时,暗示许可传输.BHE:数据总线许可旌旗灯号,与A0组合运用,暗示是否拜访奇地址字节.12.简述8086读总线周期和写总线周期和引脚上的旌旗灯号动尖态变更进程.8086的读周期时序和写周期时序的差别有哪些?答:在8086读周期内,有关总线旌旗灯号的变更如下:①M/IO:在全部读周期保持有效,当进行存储器读操纵时,M/IO为高电平;当进行I/O端口读操纵时,M/IO为低电平.②A19/S6~A16/S3:在T1时代,输出CPU要读取的存储单元或I/O端口的地址高4位.T2~T4时代输出状况信息S6-S3.③BHE/S7:在T1时代,输出BHE有效旌旗灯号(BHE为低电平),暗示高8位数据总线上的信息可以运用,BHE旌旗灯号平日作为奇地址存储体的体选旌旗灯号(偶地址存储体的体选旌旗灯号是最低地址位A0).T2—T4时代输出高电平.④AD l5~AD0:在T1时代,输出CPU要读取的存储单元或I/O端口的地址A15~A0.T2时代为高阻态,T3~T4时代,存储单元或I/O端口将数据奉上数据总线.CPU从AD l5~AD0上吸收数据.⑤ALE:在T1时代地址锁存有效旌旗灯号,为一正脉冲,体系中的地址锁存器恰是运用该脉冲的降低沿来锁存A19/S6~A16/S3,AD l5~AD0中的20位地址信息以及BHE.⑥RD:T2时代输出低电平送到被选中的存储器或I/O接口,留意,只有被地址旌旗灯号选中的存储单元或I/O端口,才会被RD旌旗灯号从中读出数据(数据奉上数据总线AD l5~AD0).⑦DT/R:在全部总线周期内保持低电平,暗示本总线周期为读周期,在接稀有据总线收发器的体系中,用来掌握数据传输偏向.⑧DEN:在T2~T3时代输出有效低电平,暗示数据有效,在接稀有据总线收发器的体系中,用来实现数据的选通.总线写操纵的时序与读操纵时序类似,其不合处在于:①AD l5~AD0:在T2~T4时代奉上欲输出的的数据,而无高阻态.②W R:从T2~T4,W R引脚输出有效低电平,该旌旗灯号送到所有的存储器和I/O接口.留意,只有被地址旌旗灯号选中的存储单元或I/O端谈锋会被W R旌旗灯号写入数据.③DT/R:在全部总线周期内保持高电平,暗示本总线周期为写周期,在接稀有据总线收发器的体系中,用来掌握数据传输偏向.习题31.假定(DS)=2000H,(ES)=2100H,(SS)=1500H,(SI)=00A0H,(BX)=0100H,(BP)=0010H,数据变量V AL的偏移地址为0050H,请指出下列指令原操纵数是什么寻址方法,其物理地址是若干?(1)MOV AX, 0ABH (2) MOV AX, [100H](3) MOV AX, V AL (4) MOV BX, [SI](5) MOV AL, V AL[BX] (6) MOV CL, [BX][SI](7) MOV V AL[SI], BX (8) MOV [BP][SI], 100答:(1) 立刻数寻址,无物理地址(2) 直接寻址,物理地址=2000H×10H+100H=20100H(3) 直接寻址,物理地址=2000H×10H+0050H=20050H(4) 存放器间接寻址,物理地址=2000H×10H+00A0=200A0H(5) 相对存放器寻址,物理地址=2000H×10H+(0050+0100H)=20150H(6) 基址加变寻址,物理地址=2000H×10H+(0100H+00A0H)=201A0H(7) 存放器寻址,无物理地址(8) 立刻数寻址,无物理地址2.已知(SS)=0FFA0H,(SP)=00B0H,先履行两条把8057H和0F79H分离进栈的PUSH指令,再履行一条POP指令,试画出客栈区和SP内容变更的进程示意图.答:“8057H”进栈,则SP主动从00B0H指向00B2H,“0F79H”进栈,则SP主动从00B2H指向00B4H;履行一条POP指令,“0F79H”被弹出栈,SP从00B4H指向00B2H.图略.3.设有关存放器及存储单元的内容如下:(DS)=2000H, (BX)=0100H, (AX)=1200H, (SI)=0002H, (20100H)=12H, (20101H)=34H, (20102H)=56H, (20103H)=78H, (21200H)=2AH, (21201H)=4CH, (21202H)=0B7H, (21203H)=65H.试解释下列各条指令单独履行后相干存放器或存储单元的内容.(1)MOV AX, 1800H (2) MOV AX, BX(3) MOV BX, [1200H] (4) MOV DX, 1100[BX](5) MOV [BX][SI], AL (6) MOV AX, 1100[BX][SI]答:(1) (AX)=1800H (2) (AX)=0100H (3) (BX)=4C2AH(4) (DX)=4C2AH (5) (20102H)=00H (6) (AX)=65B7H4. 写出实现下列盘算的指令序列.(1) Z=W+(X+Z) (2) Z=W-(X+6)-(R+9)答:(1) MOV AX, ZADD AX, XADD AX, WMOV Z, AX(2) MOV AX, WADD X, 6SUB AX, XADD R, 9SUB AX, RMOV Z, AX5. 若在数据段中从字节变量TABLE响应的单元开端存放了0~15的平方值,试写出包含XLAT指令的指令序列查找N(0~15)中的某个平方数.答:LEA BX, TABLEMOV AL, CLXLAT6. 写出实现下列盘算的指令序列.(1) Z=(W*X)/(R+6) (2) Z=((W-X)/5*Y)*2答:(1) MOV AX, WIMUL XADD R, 6IDIV RMOV Z, AX(2) MOV AX, WSUB AX, XMOV BL, 5IDIV BLCBWIMUL YMOV BX, 2IMUL BXMOV Z, AX7. 假定,CF=1, 试肯定下列各条指令单独履行后DX的值.(1) SHR DX, 1 (2) SHL DL, 1 (3) SAL DH, 1 (4) SAR DX, CL(5) ROR DX, CL (6) ROL DL, CL (7) RCR DL, 1 (8) RCL DX, CL答:(1) (DX)=0110 0100 1101 1100B (2) (DX)=1100 1001 0111 0010B(3) (DX)=1001 0010 1011 1001B (4) (DX)= 1111 1001 0011 0111B(5) (DX)= 0011 1001 0011 0111B (6)(DX)= 0100 1101 1100 1110B(7) (DX)= 1110 0100 1101 1100B (8) (DX)= 1001 0011 0111 0011B8. 已知程序段如下:MOV AX, 1234HMOV CL, 4ROL AX, CLDEC AXMOV CX, 4MUL CXINT 20H试问:(1)每条指令履行后,AX存放器的内容是什么?(2)每条指令履行后,CF,SF及ZF的值分离是什么?(3)程序运行停止后,AX及DX存放器的值为若干?答:MOV AX, 1234H (AX)=1234H, CF=0,SF=0,ZF=0MOV CL, 4ROL AX,CL (AX)=2341H,CF=1,SF=0,ZF=0 DEC AX (AX)=2340H,CF=1,SF=0,ZF=0MOV CX,4MULL CX (AX)=8D00H, CF=0,SF=1,ZF=0 INT 20H停止后,(DX)=0000H, (AX)=8000H9.试剖析下列程序段:ADD AX, BXJNC L2SUB AX, BXJNC L3JMP SHORTL5假如AX,BX的内容给定如下:AX BX(1) 14C6H 80DCH(2) B568H 54B7H问该程序在上述情形下履行后,程序转向何处.答:(1)转到L2处(2)转到L3处习题41.下列语句在存储器平分离为变量分派若干字节空间?并画出存储空间的分派图.V AR1 DB 10,2V AR2 DW 5 DUP(?),0V AR3 DB ‘HOW ARE YOU?’,3 DUP(1,2)V AR4 DD -1,1,0答:字节空间:V AR1:2;V AR2:12;V AR3:13;V AR4:8.存储空间的分派图:2.假定V AR1 和V AR2 为字变量,LAB 为标号,试指出下列指令的错误之处. (1)ADD V AR1,V AR2 (2)SUB AL,V AR1(3)JMP LAB[CX] (4)JNZ V AR1(5) MOV [1000H],100 (6)SHL AL, 4答:(1) 在算术运算指令中,两个操纵数不克不及同时为存储器寻址方法(2) AL 为字节,V AR1 为字变量,字长不相等;(3) 错误1:存放器相对寻址方法,只能运用基址或变址存放器,不克不及运用CX存放器.错误2:汇编格局错误,无法判段是段内转移照样段间转移.(4) 转向地址应为标号,不克不及是变量;(5) 目标操纵数的类型不肯定;(6) SHL 指令中,当所移位数超出1 时,必须用CL代替所移位数.3.对于下面的符号界说,指出下列指令的错误.A1 DB ?A2 DB 10K1 EQU 1024(1) MOV K1,AX (2)MOV A1,AX(3)CMP A1,A2 (4)K1 EQU 2048答:(1)K1 为常量,不克不及用MOV 指令赋值;(2)A1 为字节,AX 为字变量,类型不一致;(3)A1 和A2同为存储器寻址方法,不相符语律例则;(4)K1 从新赋值前,必须用PURGE 释放.4.数据界说语句如下所示:FIRST DB 90H,5FH,6EH,69HSECOND DB 5 DUP(?)THIRD DB 5 DUP(?)FORTH DB 4 DUP (?)自FIRST 单元开端存放的是一个四字节的十六进制数(低位字节在前),请求:编一段程序将这个数左移两位后存放到自SECOND 开端的单元,右移两位后存放到自THIRD 开端的单元,求补后放到FORTH开端的单元.(留意保存移出部分)答:DA TA SEGMENTFIRST DB 90H,5FH,6EH,69HSECOND DB 5 DUP(?)THIRD DB 5 DUP(?)FORTH DB 4 DUP (?)DA TA ENDSCODE SEGMENTASSUME CS:CODE,DS:DATASTART:MOV AX,DA TAMOV DS,AXLEA SI,FIRSTLEA DI,SECONDMOV CX,2CLC;左移2 位MOV AX,WORD PTR [SI] ;AX=5F90H 为低十六位数据INC SIINC SIMOV DX,WORD PTR [SI] ;DX=696EH 为高十六位数据PUSH DX ;保管原有的高十六位数据PUSH AX ;保管原有的低十六位数据ROL DX,CL;将高位数据不带进位轮回左移两位,即高2 位数据在DL 的低2 位AND DL,03H ;让DL 中仅保管移出的高2 位数据MOV [DI+4] ,DL;将移出的高2 位数据放入SECOND 中的最高单元中ROL AX,CL;将低位数据不带进位轮回左移两位,即AX 的高2 位在AL 的低2 位AND AL,03H;让AL 中仅保管移出的AX 高2 位数据MOV BL ,AL;将AL 中的数据放入BL 中保管POP AX;弹出原有的低十六位数据POP DX;弹出原有的高十六位数据SHL DX,CL;将高位数据算术逻辑左移2 位SHL AX,CL;将低位数据算术逻辑左移2 位OR DL,BL;将AX 中移出的高2 位数据放入DX 的低2 位MOVWORD PTR [DI] ,AXMOVWORD PTR [DI+2] ,DX;右移2 位LEA SI,FIRSTLEA DI,THIRDMOV CX,2CLCMOV AX,WORD PTR [SI] ;AX=5F90H 为低十六位数据INC SIINC SIMOV DX,WORD PTR [SI] ; DX=696EH 为高十六位数据PUSH DX;保管原有的高十六位数据PUSH AX;保管原有的低十六位数据ROR AX,CL;将低位数据不带进位轮回右移两位,即低2 位数据在AH 的高2 位AND AH,0C0H;让AH 中仅保管移出的低2 位数据PUSH CXMOV CX,6SHR AH,CLPOP CXMOV [DI] ,AH ;将移出的低2 位数据放入THIRD 中的最低单元中ROR DX, CL;将低位数据不带进位轮回左移两位,即AX 的高2 位在AL 的低2 位AND DH,0C0H ;让DH 中仅保管移出的DX 低2 位数据MOV BL ,DH ;将DH 中的数据放入BL 中保管POP AX ;弹出原有的低十六位数据POP DX ;弹出原有的高十六位数据SHR DX,CL ;将高位数据算术逻辑左移2 位SHR AX,CL ;将低位数据算术逻辑左移2 位OR AH,BL ;将DX 中移出的低2 位数据放入AX 的高2 位MOVWORD PTR [DI+1] , AXMOV WORD PTR [DI+3] ,DX;求补LEA SI,FIRSTLEA DI,FORTHMOV AX,WORD PTR [SI] ;AX=5F90H 为低十六位数据INC SIINC SIMOV DX,WORD PTR [SI] ; DX=696EH 为高十六位数据XOR AX, 0FFFFH ;将低十六位取反XOR DX, OFFFFH ;将高十六位按位取反CLCADD AX,01H ;低位加1,即可为原数的求补ADC DX,0 ;高位加低位加法时的进位MOVWORD PTR [DI] , AXMOV WORD PTR [DI+2] ,DXMOV AH,4CHINT 21HCODE ENDSEND START5.试编程序将内存从40000H到4BFFFH的每个单元中均写入55H,并再逐个单元读出比较,看写入的与读出的是否一致.若全对,则将AL置7EH; 只要有错,则将AL置81H.答:DATA SEGMENTDA1 DB 55HCODE SEGMENTASSUME CS:CODE,DS:DATASTART: MOV AX,4000HMOV DS,AXMOV CX,0C000HMOV BX,0000HMOV AH,55HNEXT1: MOV byte ptr[BX],AHINC BXLOOP NEXT1MOV BX,0000HMOV CX,0C000HMOV AL,81HNEXT2: MOV AH, [BX]CMP AH,55HJNZ EXITINC BXLOOP NEXT2MOV AL,7EHEXIT: MOV AH,4CHINT 21HCODE ENDSEND START6.在当前数据段4000H开端的128个单元中存放一组数据,试编程序将它们次序搬移到A000H开端的次序128个单元中,并将两个数据块逐个单元进行比较; 如有错将BL置00H; 全对则将BL置FFH,试编程序.答:DATA SEGMENTORG 400HDA1 DB 128 DUP(?)ORG 0A00HDA2 DB 128 DUP(?)DATA ENDSCODE SEGMENTASSUME CS:CODE,DS:DATA,ES:DATASTART: MOV AX,DATAMOV DS,AXLEA SI,DA1LEA DI,DA2MOV CX,128AGAIN:MOV AL,[SI]INC SIINC DILOOP AGAINLEA SI, DA1LEA DI, DA2MOV CX,128NEXT:MOV AL,[SI]MOV BL,[DI]CMP AL,BLJNZ ERRORINC SIINC DIMOV BL,0FFHLOOP NEXTJMP EXITERROR: MOV BL,00HEXIT: MOV AH,4CHINT 21HCODE ENDSEND START7. 设变量单元A.B.C存放有3个数,若3个数都不为零,则求3个数的和,存放在D中; 如有一个为零,则将其余两个也清零,试编写程序.答:DATA SEGMENTA DB ?B DB ?C DB ?DATA ENDSCODE SEGMENTASSUME CS:CODE,DS:DATASTART:MOV AX,DATAMOV DS,AXCMP A,00HJNZ LP1MOV B,0MOV C,0JMP LP4LP1:CMP B,00HJNZ LP2MOV A,0MOV C,0JMP LP4LP2:CMP C,00HJNZ LP3MOV A,0MOV B,0JMP LP4LP3:MOV AL,AADD AL,BADD AL,CMOV AH,4CHLP4: INT 21HCODE ENDSEND START8. 有一个100个字节的数据表,表内元素已按从大到小的次序分列好,现给定一元素,试编程序在表内查找,若表内已有此元素,则停止; 不然,按次序将此元素拔出表中恰当的地位,并修正表长.答:DATA SEGMENTBUFF DB 100 DUP(?)DA1 DB (?)LENGTH DB 0DATA ENDSCODE SEGMENTASSUME CS:CODE,DS:DATASTART:MOV AX,DATAMOV DS,AXMOV SI,0MOV AL,DA1MOV CX,100FIND0: CMP BUFF[SI],ALJZ EXITINC SILOOP FIND0MOV DI,99MOV SI,0COMPARE: CMP BUFF[DI],ALJG INSERTMOV BL,BUFF[DI]MOV BUFF[DI+1],BLDEC DICMP DI,SIJNL COMPAREJMP EXITINSERT:MOV BUFF[DI+1],ALMOV LENGTH , 101EXIT:MOV AH,4CHINT 21HCODE ENDSEND START9. 内存中以FIRST和SECOND开端的单元平分离存放着两个16位组合的十进制(BCD码)数,低位在前.编程序求这两个数的组合的十进制和,并存到以THIRD 开端的单元.答:DATA SEGMENTFIRST DD 34341212HSECOND DD 78785656HTHIRD DB ?,?,?,?DATA ENDSCODE SEGMENTASSUME CS:CODE,DS:DATASTART:MOV AX,DATAMOV DS,AXLEA SI,FIRSTLEA DI,SECONDLEA BX,THIRDMOV CX,4CLCAGAIN:MOV AL,BYTE PTR[SI]MOV DL,BYTE PTR[DI]ADC AL,DLDAAMOV BYTE PTR[BX],ALINC SIINC DIINC BXLOOP AGAINJC AAMOV BYTE PTR[BX],0JMP EXITAA:MOV BYTE PTR[BX],1EXIT:MOV AH,4CHINT 21HCODE ENDSEND START10. 编写一段程序,吸收从键盘输入的10个数,输入回车符暗示停止,然后将这些数加密后存于BUFF缓冲区中.加密表如下:输入数字: 0,1,2,3,4,5,6,7,8,9; 暗码数字: 7,5,9,1,3,6,8,0,2,4.答:DATA SEGMENTMITAB DB '7591368024'CONT EQU $-MITABBUFFDB 10 DUP (?),'$'YUANWENDB 10 DUP (?),'$'DATA ENDSCODE SEGMENTASSUMECS∶CODE,DS∶DATASTART: MOV AX,DATAMOV DS,AXMOV SI,0MOV CX,CONTINPUT: MOV AH,1INT 21HCMP AL,13JZ EXITAND AL,0FHMOV YUANWEN[SI] ,ALINC SILOOP INPUTEXIT : LEA BX,MITABMOV CX,SIMOV SI,0JIAMI: MOV AL,YUANWEN[SI]XLAT MITABMOV BUFF[SI],ALINC SILOOP JIAMIMOV AH, 4CHINT 21HCODE ENDSEND START11.试编程序,统计由40000H开端的16K个单元中所存放的字符“A”的个数,并将成果存放在DX中.答:DATA SEGMENTDA1 DB 'A'BUFF DB 4000H DUP(?)DATA ENDSCODE SEGMENTASSUME CS:CODE,DS:DATASTART: MOV AX,4000HMOV DS,AXMOV BX,0MOV CX,4000HFIND: MOV AL,[BX]MOV BL,DA1CMP AL,BLJNZ NEXTNEXT: INC SILOOP FINDMOV AH,4CHINT 21HCODE ENDSEND START12. 在当前数据段(DS),偏移地址为DATAB开端的次序80个单元中,存放着某班80个同窗某门测验成绩.按如下请求编写程序:(1) 编写程序统计≥90分; 80分~89分; 70分~79分; 60分~69分,<60分的人数各为若干,并将成果放在同一数据段.偏移地址为BTRX开端的次序单元中. (2) 试编程序,求该班这门课的平均成绩为若干,并放在该数据段的A VER单元中. 答:DATA SEGMENTBUFF DW 80 DUP(?)DA9 DB 0DA8 DB 0DA7 DB 0DA6 DB 0DA5 DB 0A VER DB 0DATA ENDSCODE SEGMENTASSUME CS:CODE,DS:DATASTART:MOV AX,DATAMOV DS,AXMOV CX,80COMPARE: MOV BX,0CMP BUFF[BX],90JB LP8JMP NEXTLP8: CMP BUFF[BX],80JB LP7INC DA8JMP NEXTLP7: CMP BUFF[BX],70JB LP6INC DA7JMP NEXTLP6: CMP BUFF[BX],60JB LP5INC DA6JMP NEXTLP5: INC DA5JMP NEXTNEXT: INC BXLOOP COMPAREMOV CX,80XOR AX,AXMOV BX,00SUM: ADD AX,BUFF[BX] INC BXLOOP LP1MOV CL,80DIV CLMOV A VER , ALMOV AH,4CHINT 21HCODE ENDSEND START13. 编写一个子程序,对AL中的数据进行偶校验,并将经由校验的成果放回AL 中.答:JIOU PROCPUSH CXPUSH BXXOR AH, AHPUSH AXMOV CL, 7LOOP1: SAR AL, 1ADC AH, 0LOOP LOOP1MOV AL, AHXOR AH, AHMOV BL, 2DIV BLMOV BL, AHPOP AXROR BL, 1OR AL, BLPOP BXPOP CXRETJIOU ENDP14. 运用上题的子程序,对80000H开端的256个单元的数据加上偶校验,试编程序.CODE SEGMENTASSUME CS: CODESTART : MOV AX, 8000HMOV DS, AXMOV SI, 0MOV CX, 256LP: MOV AL, [SI] CALL JIOUMOV [SI], ALINC SILOOP LPMOV AH, 4CH INT 21HJIOU PROCPUSH CXPUSH BXXOR AH, AHPUSH AXMOV CL, 7 LOOP1: SAR AL, 1ADC AH, 0LOOP LOOP1 MOV AL, AHXOR AH, AHMOV BL, 2DIV BLMOV BL, AHPOP AXROR BL, 1OR AL, BLPOP BXPOP CXRETJIOU ENDPCODE ENDS END START习题51.试述DRAM的工作特色;与SRAM比拟有什么长处和缺少之处;解释它的运用处合.答:DRAM,动态随机存取存储器,须要不竭的刷新,才干保管数据. 并且是行列地址复用的,很多都有页模式. SRAM,静态的随机存取存储器,加电情形下,不须要刷新,数据不会丧掉,并且一般不是行列地址复用的.与SRAM比拟,DRAM价钱便宜.速度慢.容量大,重要用来做主存储器,存储程序和数据;而SRAM重要用在Cache等对速度请求高的情形.2.试述DRAM刷新进程和正常读/写进程的差别.答:刷新是以行动单位进行,且刷新进程中不克不及进行读写操纵.3.设有一个具有20位地址和32位字长的存储器,问:(1)该存储器能存储若干个字节的信息?(2)假如存储器由512K*8位SRAM芯片构成,须要若干片?(3)须要若干位作芯片选择?答:(1)该存储器能存储4MB的信息.(2) 须要8片512K*8位的芯片.(3) 须要1位做芯片选择.4.对于8K×8位RAM构成的存储器体系,若某组的肇端地址为08000H,则其末地址为若干?答:末地址为9FFF.5.在8088最大方法体系总线上扩充设计4K字节的SRAM存储器电路.SRAM芯片选用Intel 2114,肇端地址从0000H.试画出此存储器电路与体系总线的衔接图.答:体系容量为 4K*8bit,芯片容量为1K*4bit,所以一共须要8片芯片衔接图如下:6.在8088体系总线上扩充设计8K的字节的SRAM存储器电路.SRAM芯片选用Intel 6264,肇端地址从04000H开端,译码器电路74LS138.(1)盘算此RAM存储区的最高地址是若干.(2)画出此存储器电路与体系总线的衔接图.答:(1)最高地址是05FFFH.(2)7.在8086最小方法体系总线上扩充设计16K字节的SRAM存储器电路,SRAM芯片选用Intel 6264,肇端地址从04000H开端,译码器电路采取74LS138.(1)盘算此RAM存储区域的最高地址是若干(2)画出此存储器与总线的衔接图.答:(1) 07FFFH(2)习题61.什么是接口?接口的功效是什么?答:位于主机与外设之间,用来协助完成数据传送和掌握义务的逻辑电路称为接口电路,接口电路对输入/输出进程起缓冲和联络感化.接口的功效是有,数据缓冲功效,联络功效,寻址功效,预处理功效,中止治理功效.2.盘算机对I/O端口编址时平日采取哪两种办法?在8086体系中,用哪种办法进行编址?答:I/O端口和存储器同一编址;I/O端口单独编址.8086体系采取I/O端口单独编址方法.3.CPU和输入/输出装备之间传送的信息有哪几类?答: 数据信息,掌握信息,与状况信息.4.简述CPU与外设进行数据交流的几种经常运用方法.答: 程序掌握方法: 特色是依附程序的掌握来实现主机和外设的数据传送,可分为无前提传送方法和查询方法.中止掌握方法: 每次输入和输出一个数据,CPU都要检讨外设的状况.直接存储器存取掌握方法:cpu不介入数据传送,而是由DMA掌握器来实现内存与外设,外设与外设之间的直接传递.通道方法:可以实现对外围装备的同一治理和外围装备与内存之间的数据传送.外围处理机方法:由PPU自力于主机工作,削减了CPU掌握外设的累赘.5.无前提传送方法实用哪些场合?查询方法道理如何?重要用在什么场合?答:无前提传送实用于简略的输入/输出装备,CPU可以随时读取或接收状况.这些旌旗灯号变更迟缓,当须要收集数据时,无需检讨端口,就可以立刻收集数据,直接用输入/输出指令完成.无前提传送方法重要用于掌握CPU与低俗I/O接口之间的信息交流.6.现有一输入装备,其数据端口的地址为FFE0H,并于端口FFE2H供给状况,当其D0位为1时标明输入数据预备好.请编写采取查询方法进行数据传送的程序段,请求从该装备读取100B并输入到1000H:2000H开端的内存中.MOV DX, 0FFE2HL1: IN AL, DX 这是习题6的第6题的答案,TEST AL, 01H 这个程序写不出来,建议删这一问JZ L1MOV AX, 1000HMOV DS, AXMOV DX, 2000HMOV CX, 100MOV DX, 0FFE0HL2: IN AL, DXMOV [DX], ALINC BXLOOPN L27.查询式传送方法有什么优缺陷?中止方法为什么能填补查询方法的缺陷?答:查询传送方法CPU通进程序不竭查询响应装备的状况,状况不相符请求,则CPU须要等待;只有当状况旌旗灯号相符请求时,CPU才干进行响应的操纵.中止方法进步了盘算机体系中信息处理的并行和处理器效力,中止可以实现同步操纵,及时处理等功效.8.8088/8086中止向量表的感化是什么?答:中止向量表树立了不合的中止源与其响应的中止办事程序首地址之间的接洽,它是CPU在响应中止时可以根据中止类型码主动转向中止办事程序.9.什么叫中止向量?它放在哪里?对于1CH的中止向量在哪里?假如1CH的中止程序从5110H开端:2030H开端,则中止向量应当如何存放?答:中止向量即用来供给中止进口地址的一个指针.10.8259中IRR, IMR, ISR三个存放器的感化是什么?答:⑴中止请求存放器IRR8259A有8条外部中止请求输入旌旗灯号线IR0-IR7,每一条请求线上有一个响应的触发器来保管请求旌旗灯号,它们形成了中止请求存放器IRR(Interrupt Request Register).⑵中止屏障存放器IMRIMR(Interrupt Mask Register)用来存放屏障位信息,IMR的每一位可以制止IRR 中对应位的中止请求输入旌旗灯号进入.⑶中止办事存放器ISRISR(Interrupt Service Register)存放当前正在进行办事的所有中止.ISR中响应位的置位是在中止响应的INTA脉冲时代,由优先权判决电路根据IRR中各请求位的优先权级别和IMR中屏障位的状况,将中止的最高优先级请求位选通到ISR中.11.类型号为20H的中止办事程序进口符号地址为INT-5,试写出中止向量的装入程序片断.答:MOV AX, 0MOV DS, AXMOV SF, 20H*4LEA AX, IMSMOV [IS], AXMOV AX, SEQ, INTSMOV [SI+2], AX12.简述DMA掌握器同一般接口芯片的差别.答:DMA掌握器能给出拜访内存所须要的地址信息,并能主动修正地址指针,也能设定和修正传送的字节数,还能向存储器和外设发出响应的读/写掌握旌旗灯号.在DMA传送停止后,它能释放总线,把对总线的掌握权又交还给CPU.用DMA方法传输数据时,不须要进行呵护和恢复断点及现场之类的额外操纵.13.简述8237A3种根本传送类型的特色.答:单次传送方法:每次DMA操纵只传送1B,然后就主动把总线掌握权交。
微机原理与接口技术(楼顺天第二版)第六章习题解答微机原理与接口技术(楼顺天第二版)习题解答第6章总线及其形成6.1答:内存储器按其工作方式的不同,可以分为随机存取存储器(简称随机存储器或RAM)和只读存储器(简称ROM)。
随机存储器。
随机存储器允许随机的按任意指定地址向内存单元存入或从该单元取出信息,对任一地址的存取时间都是相同的。
由于信息是通过电信号写入存储器的,所以断电时RAM中的信息就会消失。
计算机工作时使用的程序和数据等都存储在RAM中,如果对程序或数据进行了修改之后,应该将它存储到外存储器中,否则关机后信息将丢失。
通常所说的内存大小就是指RAM 的大小,一般以KB或MB为单位。
只读存储器。
只读存储器是只能读出而不能随意写入信息的存储器。
ROM中的内容是由厂家制造时用特殊方法写入的,或者要利用特殊的写入器才能写入。
当计算机断电后,ROM中的信息不会丢失。
当计算机重新被加电后,其中的信息保持原来的不变,仍可被读出。
ROM适宜存放计算机启动的引导程序、启动后的检测程序、系统最基本的输入输出程序、时钟控制程序以及计算机的系统配置和磁盘参数等重要信息。
6.2 答:存储器的主要技术指标有:存储容量、读写速度、非易失性、可靠性等。
6.3答:在选择存储器芯片时应注意是否与微处理器的总线周期时序匹配。
作为一种保守的估计,在存储器芯片的手册中可以查得最小读出周(R)(Read Cycle Time)和最小写周期期tcyct(W)(Write Cycle Time)。
如果根据计算,微cyc处理器对存储器的读写周期都比存储器芯片手册中的最小读写周期大,那么我们认为该存储器芯片是符合要求的,否则要另选速度更高的存储器芯片。
8086CPU对存储器的读写周期需要4个时钟周期(一个基本的总线周期)。
因此,作为一种保守的工程估计,存储器芯片的最小读出时间应满足如下表达式:t cyc(R)<4T-t da-t D-T其中:T为8086微处理器的时钟周期;t da 为8086微处理器的地址总线延时时间;t D为各种因素引起的总线附加延时。
这里的t D应该认为是总线长度、附加逻辑电路、总线驱动器等引起的延时时间总和。
同理,存储器芯片的最小写入时间应满足如下表达式:t cyc(W)<4T-t da―t D―T6.4 答:全地址译码、部分地址译码和线选。
全地址译码方式下CPU 地址总线的所有地址均参与存储单元的地址译码,存储单元地址唯一;部分地址译码方式和线选方式下CPU 地址总线的有一些地址信号没有参与译码,则取0或取1均可,所以存储器的存储单元地址不唯一,有重复。
6.5 答:数据总线的低8位接偶存储体,高8位接奇存储体;地址总线的A19~A1同时对奇偶存储体寻址,地址总线的A0只与偶地址存储体连接,BHE 与奇地址存储体连接。
6.6 答:(1)1k ×1 32825611K K ⨯=⨯片,片内寻址:09A A ,共10位;片选控制信号:1015AA ,共6位。
(2)1k ×4 3286414K K ⨯=⨯片,片内寻址:09A A ,共10位; 片选控制信号:1015AA ,共6位。
(3)4k ×8 328848K K ⨯=⨯片,片内寻址:011A A ,共12位; 片选控制信号:1215AA ,共4位。
(4)16k ×4 3284164K K ⨯=⨯片,片内寻址:013A A ,共14位; 片选控制信号:1415AA ,共2位。
6.7 答:(1)1k ×1 2568204811K K ⨯=⨯片,片内寻址:09A A ,共10位; 片选控制信号:1019AA ,共10位。
(2)1k ×4 256851214K K ⨯=⨯片,片内寻址:09A A ,共10位; 片选控制信号:1019AA ,共10位。
(3)4k ×8 25686448K K ⨯=⨯片,片内寻址:011A A ,共12位; 片选控制信号:1219AA ,共8位。
(4)16k ×4 256832164K K ⨯=⨯片,片内寻址:013A A ,共14位; 片选控制信号:1419AA ,共6位。
6.8 答:32K=152=8000H ,所以,最高地址为:4000H+8000H-1=BFFFH ,则,可用的最高地址为0BFFFH.6.9 答:7FFFH-4000H+1=4000H=142=16KB ,内存容量为16KB 。
6.10 答:因为6264的片容量为8KB 。
RAM 存储区域的总容量为03FFFH-00000H+1=4000H=16KB ,故需要2片6264芯片。
连接图如图6.10所示。
14A 15A 13A 5V+MEMWMEMR16A 17A 18A 19A 0A 12A O E1C S 2C S W E0D 7D 62640A 12A O E1C S 2C S W E0D 7D 6264AB C1G 2AG 2B G 0Y 1Y 2Y 3Y 4Y 5Y 6Y 7Y 74LS1385V+MEMW MEMR07D D 012A A 图6.10 与8088系统总线的连接图检测程序段:MOV AX,0000H MOV DS,AX MOV SI,0MOV CX,16*1024 MOV AL,55HCMPL: MOV [SI],ALMOV BL,[SI] CMP BL,AL JNE ERROR INC SI LOOP CMPL MOV DL,0EEH JMP NEXTERROR: MOV DL,01H NEXT: …6.11 答:EPROM 芯片的编程有两种方式:标准编程和快速编程。
在标准编程方式下,每给出一个编程负脉冲就写入一个字节的数据。
Vpp 上加编程电压,地址线、数据线上给出要编程单元的地址及其数据,并使CE =0,OE =1。
上述信号稳定后,在PG M 端加上宽度为50ms ±5ms 的负脉冲,就可将数据逐一写入。
写入一个单元后将OE 变低,可以对刚写入的数据读出进行检验。
快速编程使用100s 的编程脉冲依次写完所有要编程的单元,然后从头开始检验每个写入的字节。
若写的不正确,则重写此单元。
写完再检验,不正确可重写。
EEPROM 编程时不需要加高电压,也不需要专门的擦除过程。
并口线EEPROM 操作与SRAM 相似,写入时间约5ms 。
串行EEPROM 写操作按时序进行,分为字节写方式和页写方式。
6.12 答:8088最大方式系统与存储器读写操作有关的信号线有:地址总线019A A ,数据总线:07D D ,控制信号:,MEMR MEMW 。
根据题目已知条件和74LS138译码器的功能,设计的板内数据总线驱动电路如图6.12(a )所示,板内存储器电路的连接电路图如图6.12 (b )所示。
74LS245A0~A7B0~B7D0~D7XD0~X D7DIR E74LS138的Y0MEMRMEMW74LS138的Y374LS138的Y274LS138的Y1图6.12(a)板内数据总线驱动电路图6.12 (b)板内存储器电路的连接图6.13 答:Intel 2764的片容量为8KB,而题目给出的地址共32KB,说明有4个地址区重叠,即采用部分地址译码时,有2条高位地址线不参加译码(即1314,A A 不参加译码)。
地址译码电路及2764与总线的连接如图6.13所示。
2764A0~A12D0~D7OE CE+5VD0~D7A0~A12VPP PGMMEMRA15A19A18A17A16图6.13地址译码电路及2764与总线的连接6.14 答:2K ×8的Intel 6116SRAM 芯片有11个地址引脚,8个数据引脚,现形成4KB 的存储器,则需要两块6116的芯片进行字节扩展。
2000H~3FFFH 有8KB ,所以必定有地址重叠,应该采用部分地址译码方式。
根据地址范围,A 15~A 13必为001,A 12与A 11使用一个进行片选译码。
在图中A11没有参与译码,当A15~A11为00100或00101时会选中上面的6116芯片,所以上面6116芯片的地址范围为:2000H~2FFFH;当A15~A11为00110或00111时会选中下面的6116芯片,所以下面6116芯片的地址范围为:3000H~3FFFH。
6.15 答:(1)00000H~01FFFH为8KB,03000H~03FFFH为4KB,所以需要6个4K×4的ROM芯片,共3组。
(2)6.16 答:(1)70000H~7BFFFH有0C000H字节,即48KB,根据题图,给出的SRAM芯片为16K ×8。
所以需要3片存储芯片;(2)3个芯片的地址范围分别为:70000H~73FFFH,74000H~~77FFFH,78000H~7BFFFH;(3)6.17 答:程序如下:STARTADDR = 2000HCHECKNUM = 9000HCODE SEGMENTASSUME CS:CODESTART: MOV AX,0 ;将数据段段地址寄存器DS设为0000HMOV DS,AXMOV BX,STARTADDRMOV CX,CHECKNUMMOV DX,0 ;用DX来计出错内存单元的个数MOV SI,1000H ;用SI进行出错字节单元地址存储寻址XH: MOV AL,55HMOV [BX],AL ;写入CMP [BX],AL ;读出,比较JNZ ERRORMOV AL,0AAHMOV [BX],ALCMP [BX],ALJNZ ERRORJMP RIGHTERROR: INC DX ;出错字节单元数增1MOV [SI],BX ;将出错字节单元的地址存入1000H开始的缓冲区INC SIINC SIRIGHT: INC BXLOOP XHHLTCODE ENDSEND START6.18 答:73FFFH-70000H+1=4000H=16K 。
ntel 6264的片容量为8KB ,RAM 存储区总容量为16KB ,故需要2片6264。
8086最小方式系统与存储器读写操作有关的信号线有:地址总线019A A ,数据总线:015D D ,控制信号:/,,,M IO RD WR BHE 。
此SRAM 电路与8086系统总线的连接图如图6.18所示。
+5VA BHEOE70D ~D RDWR12A 131A ~A 0D 7D WE2CS 1CS 0A OE12A 0D 7D WE2CS 1CS 2AG 2B G 1G C BAY 1Y 2Y 3Y 4Y 5Y 6Y 7Y 19A 15A 14A IOM 18A 17A 16A 0A 158D ~D 626462646.19 答:28C16的引脚功能: ● VCC ,GND :电源和地● 10~A A :11位地址线,可寻址2KB 地址空间 ● 7~D D :8位数据线● WE :写允许,低电平有效。