微型计算机原理及应用课后答案侯晓霞
微型计算机原理与应用课后答案
微型计算机原理与应用课后答案第1章习题1.3简述3个门电路的基本元素在电路中对电平高低的作用。
答:与、或、非。
1.4 布尔代数有哪两个特点?答:(1)值只有两个;(2)只有与、或、反3种运算。
1.5 布尔代数的“或运算”结果可用哪两句话来归纳?其“与运算”又可归纳成哪两句话“答:(1)“或运算”运算结果为有一真必为真,两者皆假才为假。
(2)“与运算”有一假即为假,两者皆真才为真。
1.6 什么叫原码、反码及补码?答:原码就是一个数的机器数。
反码:将原码每位取反,即为反码。
更准确的是:正数的反码就等于它的原码;负数的反码就是它的原码除符号位外,各位取反。
补码:反码加1就是补码。
更准确的是:正数的补码就等于它的原码;负数的补码就是它的反码加1。
1.7 为什么需要半加器和全加器,它们之间的主要区别是什么?答:(1)因为加法的第一位没有进位,所以用半加器即可;而第二位起可能有进位,故需要考虑全加器;(2)两者的区别是半加器为双入双出,全加器为三入双出。
第2章习题2.2 触发器、寄存器及存储器之间有什么关系?请画出这几种器件的符号。
答:触发器是存放一位二进制数字信号的基本单元。
触发器是计算机的记忆装置的基本单元,也可以说是记忆细胞。
触发器可以组成寄存器,寄存器又可以组成存储器。
寄存器和存储器统称为计算机的记忆装置。
(2)其符号分别表示如下:2.4 累加器有何用处?画出其符号。
答:累加器作为ALU运算过程的代数和的临时存储处。
2.5 三态输出电路有何意义?其符号如何画?答:三态输出电路使得一条信号传输线既能与一个触发器接通,也可以与其断开而与另外一个触发器接通,从而使得一条信号线可以传输多个触发器的信息。
2.6 何谓L门及E门?它们在总线结构中有何用处?答:(1)L门:高电平时使数据装入、低电平时数据自锁其中的电路;E门:E门即三态门,当选通端E门为高电平时,可将信息从A端送到B端。
(2)L门专管对寄存器的装入数据的控制,而E门志管由寄存器输出数据的控制。
微计算机原理及应用第三版答案
微计算机原理及应用第三版答案第一章:计算机系统概论1.1 计算机系统概述1.1.1 计算机硬件系统计算机硬件系统是计算机的重要组成部分,主要包括中央处理器(CPU)、存储器、输入输出设备等。
其中,CPU是计算机的核心部件,负责执行各种指令和控制计算机的运行。
存储器用于存储数据和指令,分为主存储器和辅助存储器两种形式。
输入输出设备用于与计算机进行信息的输入和输出。
1.1.2 计算机软件系统计算机软件系统是由多个软件模块组成的,可以分为系统软件和应用软件两大类。
系统软件包括操作系统、编译系统等,用于管理计算机的硬件资源和提供基本的服务。
应用软件是为了满足用户的具体需求而开发的,包括办公软件、图像处理软件等。
1.2 计算机的存储系统1.2.1 存储器的分类存储器按照存储介质的不同可以分为半导体存储器和磁性存储器两类。
半导体存储器是现代计算机中最常见的存储器类型,包括随机存取存储器(RAM)和只读存储器(ROM)等。
1.2.2 主存储器与辅助存储器主存储器是计算机中用于存储数据和指令的重要组成部分,以字节为单位进行寻址。
辅助存储器一般用于扩展主存储器的容量,具有存储容量大、价格低廉等优点。
1.3 计算机的运算与控制1.3.1 计算机的运算方法计算机的运算方法包括定点运算和浮点运算两种形式。
其中,定点运算适用于整数运算,浮点运算适用于实数运算。
1.3.2 计算机的指令系统计算机的指令系统由指令集和寻址方式组成,指令集包括操作码和操作数等。
寻址方式用于确定操作数的地址。
第二章:微处理器体系结构2.1 单总线计算机结构2.1.1 单总线结构的特点单总线结构是一种简单且成本低的计算机结构,它可以减少计算机系统中多个总线的复杂性。
然而,单总线结构的缺点是数据和指令的传输速度较慢。
2.1.2 单总线结构中的通信流程在单总线结构中,计算机的存储器、I/O设备和CPU通过共享同一根总线进行通信。
传输的数据和指令通过总线进行传输,并且只能有一个设备驱动总线进行传输。
微型计算机原理及应用答案
《微型计算机原理及应用》课程辅导材料(习题解答)马义德张在峰徐光柱袁敏李柏年编兰州大学信息科学与工程学院目录第一章微型计算机发展概述 (1)第二章8086/808816位微处理器 (2)第三章存储器技术 (6)第四章指令与寻址方式 (10)第五章汇编语言程序设计 (17)第六章输入输出处理方法 (41)第七章微型计算机综合应用与发展 (41)第一章微型计算机的发展概述习题解答1.从第一代计算机第四代计算机体系结构都是相同的,都是由运算器、控制器、存储器以及输入输出组成的、这种体系结构称为什么体系结构?答:冯`诺依曼体系结构。
2.一个完整的计算机系统通常包括系统软件和应用软件、硬件系统和软件系统、计算机及其外部设备、系统硬件和系统软件这四种组合中的哪一种?答:硬件系统和软件系统。
3.通常我们所说的32位机,指的是这种计算机CPU是什么样的?答:总线的数据宽度为32位。
4.若某台微型计算机的型号是486/25,则其中25 的含义是什么?答:25的含义是运算速度是25MB/s。
5.操作系统是计算机发展到第几代出现的?答:操作系统是计算机发展到第三代期间出现的。
6.决定微机性能的主要是CPU、总线、I/O接口电路的处理速度、价格、耗电量还是质量?答:CPU、总线和I/O接口电路的处理速度。
7.现代计算机之所以能自动地连续进行数据处理,主要是它有什么功能?答:它有程序计数器和指令寄存器。
8.微机的主要性能指标有哪些?答:主要有CPU的处理速度,总线的数据宽度,内存数据宽度,带外设的能力等。
9.有些高级语言程序在计算机中执行时,采用的是解释方式。
源程序由哪一种程序边翻译边执行?答:解释程序。
10.在计算机中为什么要使用局部总线?什么是PCI总线?它和AGP总线有什么区别?答:局部总线是在ISA总线和CPU总线之间增加了一级总线,这样可将一些高速外设从ISA 总线上卸下来,而通过局部总线直接挂到CPU总线上,使之与高速的CPU相匹配。
《微型计算机原理及应用技术》部分习题答案(新)
《微型计算机原理及应用技术》习题答案为了配合《计算机原理及硬件技术》课程的学习,特编制此部分习题答案,以便对广大同学的学习能有所帮助。
但由于时间仓促,难免有错误之处,请同学们在学习中发现错误尽快找老师联系进行更正,可以通过email 邮箱联系: gongdajixi@第一章微机基础知识一、选择题1.一台完整的微机系统应包括( )。
AA.硬件和软件B.运算器、控制器和存储器C.主机和外部设备D.主机和实用程序2.微机硬件中最核心的部件是( )。
CA.运算器B.主存储器C.CPUD.输入/输出设备3.微机的性能主要取决于( )。
AA.CPUB.主存储器C.硬盘D.显示器4. 带符号数在计算机中通常采用( )来表示。
CA.原码B.反码C.补码D.BCD码5.已知某数为-128,其机器数为10000000B,则其机内采用的是()表示。
CA.原码B.反码C.补码D.真值6.在8位二进制数中,采用补码表示时数的真值范围是( )。
CA.-127~+127B.-127~+128C.-128~+127D.-128~+1287.大写字母“B”的ASCII码是( )。
BA. 41HB. 42HC. 61HD. 62H8.某数在计算机中用8421-BCD码表示为10010011,其真值为( )。
CA.10010011BB.93HC.93D.147二、填空题:1.微机的硬件主要包括主机和外设等部分。
2.系统软件主要包括操作系统、语言处理程序和各种实用程序等。
3.任何计数制都可以采用基数和位权来表示,二进制的基数为2,其中第n位的位权为2n-1。
4.计算机中的数有_数值型和非数值型_两种表示方法,前者的特点是_表示数值大小,进行算术运算等处理操作_;后者的特点是_表示字符编码,在计算机中描述某种特定的信息。
5.计算机中参加运算的数及运算结果都应在用原码表示的-2n-1 ≤ X < +2n-1范围内,若参加运算的数及运算结果-2n-1 > X±Y ≥ +2n-1,称为数据溢出。
《微型计算机原理及应用》习题答案和实验
《微型计算机原理及应用》习题参考答案及实验项目[第1章]1.1题(1) 64H(2) DCH(3) ECH(4) 14H1.2题(1) 0110 0101 0111 1100(2) 1101 1010 1000 00001.3题用3个异或门。
其中,第1个异或门输入D3~D0,第2个异或门输入D7~D4;这两个异或门的输出送第3个异或门的输入端,由这个异或门输出奇偶校验位。
1.4题用8个异或门和一个与门。
其中,第1个异或门输入D0和Q0,第2个异或门输入D1和Q1,……第8个异或门输入D7和Q7;这8个异或门的输出送与门的输入端,由与门输出比较结果。
1.5题(1) 2131MB/s(2) 3200MB/s[第2章]2.1题(1)C=0 P=1 A=0 Z=0 S=1 O=1(2)C=1 P=0 A=1 Z=0 S=1 O=0(3)C=0 P=1 A=1 Z=0 S=0 O=02.2题参考本书图2-7。
其中,8086的MN/ MX 改接+5V;ALE、DEN和DT/ R信号改由8086输出;取消8086输出的S2~ S0信号,去掉总线控制器8288。
2.3题:参考2.3.1节。
2.4题:参考2.3.2节。
2.5题:参考2.3.3节。
2.6题:参考表2-2。
[第3章]3.1题(1) MOV AX,0700HPUSH AXPOPF(2) MOV AL,45HADD AL,35HDAA(3) MOV AL,86HSUB AL,26HDAS(4) MOV AL,08HMOV BL,07HMUL BLAAM(5) MOV AX,0608HMOV BL,08HAADDIV BL3.2题[403H][402H][401H][400H]=508850883.3题MOV SI,OFFSET MULD MOV DI,OFFSET RESULT MOV BL,05HMOV CX,4MOV DH,0AGAIN: MOV AL,[SI]MUL BLAAMADD AL,DHAAAMOV [DI],ALMOV DH,AHINC SIINC DILOOP AGAINHLT3.4题MOV SI,OFFSET DBUF1 MOV DI,OFFSET DBUF2 MOV CX,100AGAIN: MOV AL,[SI]CMP AL,50HJNA NEXTMOV [DI],ALINC DINEXT: INC SILOOP AGAINHLT3.5题(1) BX=0002H (7) BX=02B1H(2) BX=0FC6H (8) BX=2B18H(3) BX=F539H (9) BX=82B1H(4) BX=0FC4H (10) BX=2B18H(5) BX=2B18H (11) BX=02B1H(6) BX=02B1H3.6题(1) AX=10H(2) BX=05A8H(3) CL=06H CH=00H3.7题MOV SI,OFFSET STR1MOV DI,OFFSET STR2ADD DI,100MOV CX,100CLDREP MOVSBHLT3.8题MOV BX,100SUB BX,4MOV DX,0CLDAGAIN:MOV SI,OFFSET STR1ADD SI,DXMOV DI,OFFSET STR2MOV CX,5REPE CMPSBJZ FOUNDINC DXDEC BXJNZ AGAINMOV DL,’N’MOV AH,2INT 21HJMP EXITFOUND:MOV DL,’Y’MOV AH,2INT 21HEXIT: MOV AH,4CHINT 21H[第4章]4.1题(1) AX=AA88H(2) AL=33H(3) AL=40H AH=00H4.2题DATA SEGMENTSTR1 DB ’ABCDE’,95 DUP(′E′)DATA ENDSEDATA SEGMENTSTR2 DB ’12345’,95 DUP(′5′),100 DUP(?) EDATA ENDSCODE SEGMENTASSUME CS:CODE,DS:DATA,ES:EDATA START: MOV AX,DATAMOV DS,AXMOV AX,EDATAMOV ES,AXMOV SI,OFFSET STR1MOV DI,OFFSET STR2ADD DI,100MOV CX,100CLDREP MOVSBHLTCODE ENDSEND START4.3题DATA SEGMENTSTR1 DB ′ABCDE12345′,90 DUP(′A′) COUNT1 EQU $-STR1DATA ENDSEDATA SEGMENTSTR2 DB ′E1234′COUNT2 EQU $-STR2EDATA ENDSCODE SEGMENTASSUME CS:CODE,DS:DATA,ES:EDATA START: MOV AX,DATAMOV DS,AXMOV AX,EDATAMOV ES,AXMOV BX,COUNT1SUB BX,COUNT2-1MOV DX,0CLDAGAIN: MOV SI,OFFSET STR1ADD SI,DXMOV DI,OFFSET STR2MOV CX,COUNT2REPE CMPSBJZ FOUNDINC DXDEC BXJNZ AGAINMOV DL,’N’MOV AH,2INT 21HJMP EXITFOUND: MOV DL,’Y’MOV AH,2INT 21HEXIT: MOV AH,4CHINT 21HCODE ENDSEND START4.4题DATA SEGMENTVAR DB 98H,78H,86H,22H,46H,2AH,3BH COUNT EQU $-VARDATA ENDSCODE SEGMENTASSUME CS:CODE,DS:DATASTART: MOV AX,DATAMOV DS,AXMOV CX,COUNTDEC CXL1: PUSH CXPUSH BXMOV AL,[BX]INC BXL2: CMP AL,[BX]JBE L3XCHG AL,[BX]L3: INC BXLOOP L2POP BXMOV [BX],ALINC BXPOP CXLOOP L1HLTCODE ENDSEND START4.5题DATA SEGMENTMESS DB ’WELCOME’,0DH,0AH,’$’DATA ENDSCODE SEGMENTASSUME CS:CODE,DS:DATA START: MOV AX,DATAMOV DS,AXAGAIN: MOV AH,2INT 1AHMOV BL,DHCALL DISPADD BL,10HCMP BL,60HJB NEXTSUB BL,60HNEXT: MOV AH,2INT 1AHMOV AL,DHCMP, AL,BLJNZ NEXTMOV AH,1INT 16HJNZ EXITJMP AGAINDISP PROC NEARMOV DX,OFFSET MESSMOV AH,9INT 21HRETDISP ENDPEXIT: MOV AH,4CHINT 21HCODE ENDSEND START4.6题CODE SEGMENTASSUME CS:CODESTART: MOV AH,2CHINT 21HMOV BL,CHMOV CL,4CALL BCDROL BL,CLCALL DISPROL BL,CLCALL DISPCALL CRLFMOV AH,1INT 16HJNZ EXITJMP STARTBCD PROC NEARMOV AL,BLMOV BL,10CBWDIV BLSHL AL,CLOR AL,AHMOV BL,ALRETBCD ENDPDESP PROC NEARMOV DL,BLAND DL,0FHADD DL,3OHMOV AH,2INT 21HRETDISP ENDPCRLF PROC NEARMOV DL,0DHMOV AH,2INT 21HMOV DL,0AHINT 21HRETCRLF ENDPEXIT: MOV AH,4CHINT 21HCODE ENDSEND START[第5章]5.1题用8片2164。
[工学]微型计算机原理及应用课后答案
第一部分习题解答(一)习题一解答【习题一】1、解释下列术语:(1)微处理器、微型计算机和微型计算机系统;(2)溢出;(3)I/O接口。
2、对于下列二进制数,如果为无符号数,值为多少?如果为带符号数,值又为多少?(1)01011010 (2)10110110 (3)10001101 (4)111110013、求下列机器数的原码、反码和补码。
(1)01000000 (2)01111101 (3)10000010 (4)111111114、对于下列十进制数,采用8位补码计算,判断下列运算是否溢出。
(1)(-76)+65 (2)(-76)-65 (3)76-(-65)(4)76+(-65)5、完成下列无符号数的运算,并转换为十进制数进行核对。
(1)10011010+00101101 (2)11001000-00001101(3)1101×1010 (4)11000011÷01016、写出下列字符串的ASCII码值;This is an English book.答案【习题一】1、(1)微处理器:是微型计算机的核心,其基本功能是进行数据的算术运算和逻辑运算,暂存数据并控制和指挥其他部件协调一致的工作。
由算术逻辑单元、控制器、寄存器陈列等组成;微型计算机:由微处理器、内存储器、I/O接口电路及系统产品线组成;微计算机系统包括硬件系统(中央处理器(CPU)、存储器、输入输出接口和输入输出设备等部件)和软件系统(软件系统包括系统软件和应用软件两部分)两部分。
(2)溢出:指计算机中用有限位的二进制来表示数据,在运算过程中,可能使用运算结果超出有限位的表示的范围,即为溢出。
(3)I/O接口:I/O接口电路是介于计算机和外部设备之间的电路。
I/O接口电路基本功能:1)缓存数据,使各种速度的外部设备与计算机速度相匹配;2)信号变换,使各种电气特性不同的外部设备与计算机相连接;3)联络作用,使外部设备的输入输出与计算机操作同步。
微型计算机原理及应用第四版答案
微型计算机原理及应用第四版答案微型计算机原理及应用第四版答案1. 简答题一:根据微型计算机原理及应用第四版,答案如下:- 定义微型计算机:微型计算机是一种基于微处理器技术的计算机系统,包括中央处理器、内存、输入输出设备等部件,通常体积小、功耗低、成本较低,可广泛应用于个人电脑、嵌入式系统等领域。
- 描述微型计算机核心部件:微型计算机的核心部件包括中央处理器(CPU)、内存、输入输出设备等。
CPU是微型计算机的处理器,负责执行指令、进行运算逻辑等核心任务。
内存用于存储程序和数据,常见的有随机访问存储器(RAM)、只读存储器(ROM)等。
输入输出设备用于与外部环境进行数据交互,如鼠标、键盘、显示器等。
- 解释微指令:微指令是微型计算机中的一种低级指令,用于控制CPU的工作流程。
它通过微程序控制器中的存储器来存储和提取指令,包括控制信号和操作码等信息。
微指令的执行过程是顺序逐条执行,可以实现CPU的控制逻辑。
- 论述微型计算机系统结构:微型计算机系统的结构通常分为五个部分:中央处理器(CPU)、存储器、输入设备、输出设备、总线。
其中CPU负责执行指令,存储器用于存储程序和数据,输入设备用于接收外部信息,输出设备用于将结果显示给用户,总线用于连接各个部件之间的数据传输。
2. 简答题二:根据微型计算机原理及应用第四版,答案如下:- 描述微控制器的组成结构:微控制器是一种集成了微处理器、存储器和各种外设接口的单芯片计算机系统。
它通常包括中央处理器(CPU)、存储器(RAM和ROM)、输入/输出接口(I/O)、定时器/计数器(Timer/Counter)、串口、模拟/数字转换器等。
- 解释微控制器与微处理器的区别:微控制器是一种集成了微处理器、存储器和外设接口的单芯片系统,而微处理器则只包含中央处理器(CPU)。
微控制器因为集成了其他功能,所以可以独立运行,不需要外部的主板支持。
相比之下,微处理器需要通过外部的主板连接其他芯片来实现完整的计算机系统。
微型计算机原理及应用(微机实验课后答案)
DATA ENDS
CODE SEGMENT
ASSUME CS:CODE,DS:DATA
START:MOV AX,DATA
MOV DS,AX
MOV SI,OFFSET DATA1
MOV DI,OFFSET JIEGUO
MOV CX,0005H
DATA ENDS
CODE SEGMENT
ASSUME CS:CODE,DS:DATA
START: MOV AX,DATA
MOV DS,AX
LEA SI,DATA1
LEA DI,DATA2
MOV CX,0005H
DATA2 DB 5 DUP(?)
DATA ENDS
CODE SEGMENT
ASSUME CS:CODE,DS:DATA
START: MOV AX,DATA
MOV DS,AX
MOV DI,OFFSET DATA1
MOV SI,OFFSET DATA2
ADD AL,30H
A2: MOV [SI],AL
INC SI
PUSH DX
MOV AX,BX
MOV BX,0010H
MOV DX,0000H
DIV BX
MOV BX,AX
MOV AL,[SI]
MOV AH,00H
A1:INC SI
LOOP A1
STOP: HLT
INT 03H
CODE ENDS
END START
1.2
STACK SEGMENT STACK
DW 64 DUP(?)
STACK ENDS
微型计算机原理及应用第三版课后答案
微型计算机原理及应用第三版课后答案【篇一:?微型计算机原理及应用?课后习题答案】=txt>第一章1.1解释题(1)微处理器【解答】由大规模集成电路芯片构成的中央处理器( cpu ),叫做微处理器.(2)微型计算机【解答】以微处理器为根底,配以内存储器、输入输出接口电路、总线以及相应的辅助电路而构成的计算机裸机,叫做微型计算机.(3)微型计算机系统【解答】微型计算机系统由硬件系统和软件系统组成.即由微型计算机、配以相应的外部设备(如打印机、显示器、键盘、磁盘机等),再配以足够的软件而构成的系统.(4)单板机【解答】将微处理器、ram、rom以及i/o接口电路,再配上相应的外设(如小键盘、led显示器等)和固化在rom中的监控程序等, 安装在一块印刷电路板上构成的微型计算机系统称为单板机.(5)运算器【解答】运算器是直接完成各种算术运算、逻辑运算的部件,主要由alu (arithmetic and logic unit, 算术逻辑部件)、通用存放器、标志存放器等组成.(6)地址总线【解答】地址总线是cpu对内存或外设进行寻址时,传送内存及外设端口地址的一组信号线.地址总线的条数多少决定了cpu的寻址水平.⑺数据总线【解答】数据总线是cpu与内存或外设进行信息交换时,所用的一组数据信号线.它决定了cpu 一次并行传送二进制信息的位数, 反映出cpu的字长〞这个重要性能指标.(8)限制总线【解答】限制总线是在cpu与外部部件之间传送限制信息(如读/写命令、中断请求命令等)的一组信号线.1-2单片机应包括哪些根本部件?其主要应用于哪些领域?【解答】一般单片机芯片中包括微处理器、ram、rom、i/o接口电路、定时器/计数器,有的还包括a/d、d/a转换器等.其主要应用于智能化仪器仪表及工业限制领域.1-3按图1-11和图1-12,写出取第二条指令操作码和执行第二条指令的过程. 【解答】1)i p的值〔002h〕送入地址存放器ar;2)i p的内容自动加1,变为003h ;3)a r将地址码通过地址总线送到存储器的地址译码器,经译码后选中002h单元;4〕微处理器给出读命令;5〕所选中的002h单元内容04h送上数据总线db ;6〕数据总线db上的数据04h送到数据存放器dr;7〕因是取指操作,取出的是指令操作码04h,即由dr送入指令存放器ir ;8〕 ir中的操作码经指令译码器id译码后,通过pla发出执行该指令的有关限制命令.指令操作码04h经译码后cpu知道这是一条把al内容和立即数12h相加的指令.立即数12h在指令的第二字节中,那么执行第二条指令就是从内存中取出指令的第二字节送alu的i2端、把al的内容送到i1端,并在alu中做加法运算,然后把运算结果通过alu的o端再送到al中.1)ip的值〔003h 〕送入地址存放器ar ;2)i p的内容自动加1,变为004h ;3)a r将地址码通过地址总线送到存储器的地址译码器,经译码后选中003h单元;根底知识所选中的003h单元内容12h送上数据总线db;db上的数据12h送到数据存放器dr;由指令操作码的译码可知,指令要求把第二字节的数据送入alu进行运算,那么dr上的数据12h通过内部总线送到alu的i2端;8〕将al中的内容送到alu的i1端;9〕在alu中作加法、然后将运算结果通过内部总线送回到al中.到此第二条指令执行完毕.1-4计算题【解答】(1)(17,562) 102(2)(1101011011.10101) 210⑶(1000) 1016⑷(10000) 1016(5)(3f9) 1610(6)(1101011011.10101) 216(7)(5d7.5c)16 2(8)(497.72) 10bcd那么该数的十进制表示为+0.82421875 .-23+127-150 (10)按上题浮点格式,所能表示的最大正数为( 1-2) *2,最小负数为-2,最小绝对值为-150 2.(11)十进制+123的补码为01111011 ,十进制-123的补码为10000101 . .・[+123]原=01111011[+123]反=01111011.•・[+123]补=01111011・•・[-123]原=11111011[-123]反=10000100.•・[-123]补=10000101(12)十进制数+0,99609375 的补码为:[+0.99609375]补=0.11111111十进制数-0.99609375 的补码为:[-0.99609375]补=1.00000001 (13)x=0.110001,y=-0,001001, 那么[x]补=0.110001[y]补=1.110111・ .・[x+y]补=凶补+[y]补=0.110001+1.110111=0.101000 (14)x=0.101100,y=-0.100111, 那么 = [x]补=0.101100[y]补=1.011001[-y]=0.100111・•・[x-y]补=[x]补+[-y]补=0.101100+0.100111=1.010011 (15)x=0.1001, y=0.1101,贝U= [x]补=0.1001[y] =0.1101.二[x+y]补=凶补+[y]补=0.1001+0.1101=1.0110 (有溢出) (16)x=-1110 , y=-1100 ,那么[x]补=1.0010[y]补=1.0100[x+y]补=凶补+[y]补5)6)7)第二章微处理器结构2-1解释题⑴ad0~ad15双重总线【解答】双重总线就是采用分时的方法复用总线. 8086cpu在每一个总线周期的t1时,ad0~ad15用作地址总线传输地址信号,而在总线周期的其它t状态为数据总线,用作传输数据.(2)逻辑地址【解答】在程序中所涉及的地址叫做逻辑地址.逻辑地址由两局部组成,(3)物理地址【解答】信息在存储器中实际存放的地址叫做物理地址.物理地址二段基址*16+段内偏移地址.⑷溢出【解答】带符号数的运算结果超出计算机所能表示的数值范围称为溢出〞.(5)指令【解答】限制计算机完成某一个根本操作的命令(如:传送、力口、移位、输出、输入等)叫做指令.(6)等待周期tw【解答】当被选中进行读写的存储器或i/o设备,无法在总线周期规定的t状态内完成数据的读写操作时,就由该存储器或外设向cpu的ready引脚发一个低电平信号,请求延长总线周期,等待它们的读写操作完成.8086cpu受到该请求后,就在t3和t4之间插入一个等待周期tw (tw也以时钟周期为单位),参加tw的个数取决于ready的持续时间.在tw期间,总线上的状态一直保持不变.(7)空闲周期ti【解答】在两个总线周期之间,当总线上无数据传输操作时,那么系统总线处于空闲状态,此时即执行空闲周期ti, ti也以时钟周期t为单位,至于到底插入多少个ti与8086cpu执行的指令有关.(8)指令的寻址方式【解答】所谓指令的寻址方式是指在指令中操作数的表示方式.2-2扼要说明eu和biu的功能【解答】eu从biu的指令队列中获得指令,然后执行该指令,完成指令所规定的操作,eu不与外部总线相联系.biu同外部总线连接为eu完成所有的总线操作,并在工地址加法器中形成20位内存物理地址.2-3写出存放器ax、bx、cx、dx、si、di的隐含用法【解答】ax :乘除法指令中用作累加器、i/o指令中作为数据存放器.al还在bcd指令和xlat指令中作累加器.bx;间接寻址时,作为地址存放器和基址存放器.在xlat指令中用作基址存放器.cx :串操作指令和100P指令时用作循环次数计数器. cl在循环和移位指令中用作循环和移位次数计数器.dx :字乘、字除指令中用作高字积、被除数高字辅助存放器. i/o指令间接寻址时作端口地址存放器.si :间接寻址时,作为地址存放器和变址存放器、串操作时的源变址存放器. di:间接寻址时,作为地址存放器和变址存放器、串操作时的目的变址存放器. 2-4写出8086cpu的标志存放器中三个限制位的功能【解答】df:方向标志.决定在进行串操作时,每执行一条串操作指令,df=0时对源、目的操作数地址的修正是递增、df=1时是递减.if:中断允许标志.表示目前系统是否允许响应外部的可屏蔽中断请求.if=1时允许、if=0时不允许.tf:陷阱标志.当tf=1时,是单步工作方式" 常用于程序的调试. 微处理器每执行完一条指令便产生一个内部中断,转去执行一个中断效劳程序,可以借助中断效劳程序来检查每条指令的执行情况.tf=0是连续工作方式工程序连续执行.2-5说明段存放器的作用【解答】8086cpu内部数据通道和内部存放器均为16位,而8086cpu的地址线有20条,可以寻址1mb空间.为了寻址1mb地址,cpu引入了分段〞治理的概念,把可直接寻址的1mb内存空间分成了筹划能够作段〞的逻辑区域,每个段的最大物理长度为64k,段存放器就是用来存放段的16位起始地址的.8086 cpu有4个段存放器cs、ds、es、ss ,分别用来存储代码段、数据段、附加数据段、堆栈段的起始地址.2-6执行如下指令后,标志存放器中各状态位之值mov ax , 32c5hadd ax , 546ah【解答】根据运算结果分析,各状态位之值:cf=0 pf=0 af=1 zf=0 sf=1of=1⑵ mov ax , 0e453hadd ax , 0c572h根据运算结果分析,各状态位之值:cf=1 pf=1 af=0 zf=0 sf=1of=0【解答】8086cpu工作于最小模式时,用于构成小型的单处理机系统,而工作于最大模式时用于构成多处理机和协处理机系统.这两种模式的主要区别是最大模式系统的限制总线增加了一片专用的总线限制器芯片8288.(1)2-8说明8086系统中内存储器的物理地址的形成过程.【解答】8086cpu存储器物理单元的20位物理地址是通过将16位的段基址〞左移4位和16位的段内偏移地址〞在? 20位地址加法器中相加得到的. 段基址〞存放在段存放器cs、ss、ds、es中,而段内偏移地址〞由sp、bp、si、di、ip、bx以及上述存放器的组合而形成.2-9有一双字87654321h的地址为30101h ,画出其在字节编址的内存中的存放情况.【解答】2-10说明8086的指令周期、总线周期和时钟周期的区别和关系.【解答】执行一条指令所需要的时间称为指令周期,不同的指令周期是不等长的.在取指令过程中以及执行指令时取操作数或存运行结果,都要通过总线,因此一个总线周期中可能由一个或几个总线周期组成.cpu从存储器或输入输出端口存取一个字节或字的时间叫做总线周期.8086cpu的总线周期至少由4个时钟周期组成,分别以t1、t2、t3、t4表示.时钟周期是cpu的时间基准,由计算机的主频决定.例如8086cpu的主频为5mhz ,那么一个时钟周期为1/(5*106)=0.2*10-6s=0.2?s=200ns2-11根据8086 i/o的读写时序图,答复下歹U问题:(1)地址信号在哪段时间内有效?【解答】在读写总线周期的t1时间内有效.⑵读与写操作的区别?【解答】读总线周期中,数据在进入t3状态时才出现在复用总线上, 而在写周期中数据在t2状态时就出现在复用总线上.(3) i/o读写时序同存储器读写时序的区别?读写操作时,m/io为高电平;而进行i/o端口读写操作时m/io为低电平.(4)什么情况下需要插入等待周期tw ?【解答】当内存或i/o端口存取速度慢,无法在cpu的总线周期内完成相应操作时,需要插入一个或几个等待周期tw ,以延长相应总线周期.2-12扼要说明80286同8086的主要区别.【解答】80286是一种高性能的16位微处理器,片内集成有存储管理和保护机构,能用四层特权支持操作系统和任务的别离,能可靠地支持多用户和多任务系统.它的实地址方式兼容了8086的全部功能,同时它增加了保护虚地址方式. 80286有24条地址线,在实地址方式下只使用20条地址线,有1mb的寻址水平;在保护虚地址方式下,使用24条地址线,有16mb寻址水平,它能将每个任务的230字节(1gb )的虚地址映射到224字节的物理地址中去.80286的内部由地址部件au、指令部件iu、执行部件eu和总线部件biu四大局部组成,和8086的eu与biu组成相比,四个部件的并行操作,进一步提升了吞吐率、加快了处理速度.2-13扼要说明80486同80386的主要区别.【解答】80486是继80386之后新的32位微处理器,同80386相比,在相同的工作频率下,其处理速度提升了2~4倍.80486采用了rise (精简指令系统计算机)技术,降低了执行每条指令所需要的时钟数;80486采用了与80386不同的突发式总线技术,有效地解决了微处理器同内存之间的数据交换问题;80486内部集成了fpu (浮点部件)和cache (超高速缓冲存储器),cpu和fpu、cpu和cache 之间都采用高速总线进行数据传送,使其处理速度得到极大 的提升. 80486的在体系结构上除沿用 80386的总线接口部件biu 、指令预 取部件ipu 、指令译码部件idu 、执行部件eu 、存储器治理部件su 和pu 、限制部件外,为提升性能又增加了高速缓存部件 cache 、高 性能浮点处理部件fpu o2-14扼要说明pentium 同pentium pro 的主要区别.〔略〕2-15扼要说明pentium mmx 的特点.〔略〕2-16扼要说明pentium n 同pentium 田的特点.〔略〕第三章8086微处理器的指令系统3-1指出以下各指令中源操作数和目的操作数的寻址方式,并说明 操作数的类型〔注:字节数据或字数据〕(1) mov si , 1000h(2) mov bl , [1000h](3) mov [bx+0100h] , cx(4) mov byte ptr [bp] [si] , 100(5) mov ax , [bx+di+0004h]【解答】源操作数目的操作数立即寻址直接寻址存放器寻址立即寻址基址加变址寻址3-2指出以下各非法指令的错误原因 存放器寻址存放器寻址基址寻 址基址加变址寻址存放器寻址操作数类型字类型字节类型字类型 字节类型字类型(1) mov al , bx【解答】源与目的操作数类型不一致.(2) mov cl , 200h【解答】源操作数太大了, cl 是8位存放器,能存储的最大数只能 到 ffh .(3) mov cs , ax【解答】不允许用传送指令给 cs 赋值.⑷ mov ds , 3000h【篇二:微机原理〔第三版〕课后练习答案】、选择题⑴ (2) ⑶ ⑷1.计算机硬件中最核心的部件是〔〕.ca.运算器b.主存储器c.cpud.输入/输出设备2.微机的性能主要取决于〔〕.a 〔b ——计算机数据处理水平的一个重要指标〕a.cpub.主存储器c.硬盘d.显示器3.计算机中带符号数的表示通常采用〔〕.ca.原码b.反码c.补码d.bcd码4.采用补码表示的8位二进制数真值范围是〔〕.ca.-127 〜+127b.-1 27 〜+128c.-128 〜+127d.-128 〜+1285.大写字母“b的ascii码是〔〕.ba.41hb.42hc.61hd.62h6.某数在计算机中用压缩bcd码表示为10010011 ,其真值为〔〕.ca.10010011bb.93hc.93d.147二、填空题1.微处理器是指_cpu_ ;微型计算机以_ cpu _为核心,配置一内存和i/o接口—构成;其特点是_〔1〕功能强〔2〕可靠性高〔3〕价格低〔4〕适应性强〔5〕底积小〔6〕维护方便_.p8 p52.主存容量是指_ram和rom总和-它是衡量微型计算机_计算机数据处理水平的一个重要指标;构加主存的器件通常采用dram和prom 半导体器件_.p5 p93.系统总线是_cpu与其他部件之间传送数据、地址和限制信息_的公共通道;根据传送内容的不同可分成数据、地址、限制3种总线. p94.计算机中的数据可分为一数值型和非数值型_两类,前者的作用是_ 表示数值大小,进行算术运支等处理操作;房者的作用是表示字符编码,在计算机中描述某种特定的信息_.p125.机器数是指一数及其符号在机器中加以表示的数值化一机器数的表示应考虑_机达数的范围、机器数的符号、机器数中小数点位置_3个因素.p15 p166.ascii码可以表示_128_种字符,其中起限制作用的称为_功能码_供书写程序和描述命令抵用由称为_信息码_.p18 p19二、判断题1.计算机中带符号数采用补码表示的目的是为了简化机器数的运算.〔〕v3.计算机地址总线的宽度决定了内存容量的大小. 〔〕V2思考与练习题一、选择题1.在eu中起数据加工与处理作用的功能部件是〔〕.a.alu b,数据暂存器c.数据存放器d.eu限制电路2.以下不属于biu中的功能部件是〔〕.a.地址加法器b.地址存放器c.段存放器d.指令队列缓冲器a b3.堆栈操作中用于指示栈顶地址的存放器是〔〕.ba.ssb.spc.bpd.cs4.指令指针存放器〔ip〕中存放的内容是〔〕.ba.指令b.指令地址c.操作数d.操作数地址5.8086系统可访问的内存空间范围是〔〕.ba.0000h 〜ffffhb.OOOOOh 〜fffffh1620 c,O 〜2 d.O 〜26.8086的i/o地址空间采用16位数寻址时,可访问的端门数容量为〔〕.ca.16kbb.32kbc.64kbd.1mb7.8086最大和最小工作方式的主要差异是〔〕.da.数据总线的位数不同b.地址总线的位数不同c.i/o端口数的不同d.单处理器与多处理器的不同二、填空题1.8086的内部结构由_eu_和_biu_组成,前者功能是_执行指令_, 后者功能是_总线操作_.p24 p262.8086取指令时,会选取_cs_作为段基值,再加上由—ip—提供的偏移地址形成20位物理地址.3.8086有两种外部中断请求线,它们分别是_intr_ 和_nmi—.p324.8086的标志存放器共有_9_个标志位,分为_6_个_状态_标志位和_3_个_限制_标志位.p285.8086为访问1mb内存空间,将存储器进行分段治理;其物理地址是唯一的;偏移地址是指相对段基地址的偏移量;逻辑地址常用于_程序中_.p29 p20 p34 p356.逻辑地址为1000h:0230h时,其物理地址是_10230h_ ,段地址是_1000卜_ ,偏移量是_0230h_.7.时钟周期是指_cpu建本时间计量单位_,总线周期是指_一次总线操作时间-总如作是指_cpu经外部总线对存储器或i/o端口进行一次信息输入和输出的过程_.p378.8086工作在最大方式时cpu弓I脚mn/-mx应接_地_;最大和最小工作方式的应用场合分别是_多处理器和单处理器系套二.p38 p39 二、判断题2.从内存单元偶地址开始存放的数据称为规那么字. 〔〕V6.8086系统复位后重新启动时从内存地址ffff0h处开始执行.〔〕V四、简做题1.8086微处理器中的指令队列起什么作用〔eu从指令队列取指令的缓冲作用〕,其长度是多少字节〔6个字节〕?p262.什么是逻辑地址〔无符号32位二进制数〕,它由哪两局部组成〔段地址和偏移地址〕? 8086的物理地址是如何形成的〔物理地址二段地址*10h+偏移地址〕?p353.8086微机系统中存储器为什么要分段〔8086系统内的地址存放器均是16位,只能寻址64kb ;将1mb存储器分成逻辑段,每段不超过64kb空间,以便cpu操作.〕,各逻辑段之间的关系如何〔可重叠、交叉、紧密连接和别离〕? p344.i/o端口有哪两种编址方式〔统一编址和独立编址〕,8086的最大i/o寻址空间是多少〔64kb〕 ? p365.8086的最大工作模式〔8086、8087和8089通过总线限制器8288产生对总线的限制信号〕和最小工作方式〔8086直接产生总线限制信号〕的主要区别是什么?他们分别应用在何种场合〔多处理器和单处理器系统〕?p396.简述实地址方式〔由段地址和偏移地址计算产生物理地址,其物理地址可以超过20位〕和虚拟8086方式〔由段地址和偏移地址计算产生的有效物理地址为20位〕的区别.p417.简述pentium微处理器的主要特性.p44五、分析题1.有一个由10个字组成的数据区,其起始地址为1200h:0120h o试写出该数据区的首末存储单元的实际地址〔12120h〜12120h+10*2-1=12133h〕.2.假设一个程序段开始执行之前,〔cs〕二33aoh , 〔ip〕=0130h ,试问该程序段启动执行指令的实际地址是什么〔33a00h+0130h=33b30h〕 ?3.有两个16位的字31dah和5e7fh ,它们在8086系统存储器中的地址分别为00130h和00134h ,试画出它们的存储示意图.地址存储空间00130h00131h00134h 00135h4.将字符串“good!〞的ascii码依次存人从01250h开始的字节单元中,画出它们存放的内存单元示意图.地址01250h01251h01252h01253h01254h3思考与练习题一、选择题1.存放器间接寻址方式中,要寻找的操作数位于()中.a.通用存放器b.内存单元c.段存放器d.堆栈2.以下指令中正确的选项是().a.mov al,bxb.mov cs,axc.mov al,cld.mov [bx],[si]3.以下指令中错误的选项是()o b c ca.mov ax,1234hb.inc bxc.srl ax,2d.push dx4.设(sp)=1010h ,执行pop ax后,sp中的内容为().ba.1011hb.1012hc.1ooehd.100fh5.给定(al)=80h , (cl)=02h ,指令shr al,cl执行后的结果是().b a.(al)=40hb.(al)=20hc.(al)=c0hd.(al)=e0h6.将ax清零并使cf位清零,下面指令错误的选项是().aa.sub ax,bxb.xor ax,axc.mov ax,0( 不影响fr)d.and ax,0oooh二、填空题1.计算机指令通常由_操作码字段_和_操作数字段_两局部组成;指令对数据操作时.根据数据的存放位道可否为立即数、存放器操作数、存储器操作数.2.寻址的含义是指_寻找操作数的过程_; 8086指令系统的寻址方式根据大类可分为百t作数有关的寻址方式、与i/o端口有关的寻址方式_;其中寻址速度最快的是_立即数寻址_.p54~p573.指令mov ax,es:[bx+o1ooh] 中,源操作数位于_物理地址为es*10h+bx+0100h 的存储单元;读取的是附加薮据es段的存储单元内容.4.堆栈是一个特殊的_存储器区域—其操作是以_2字节单元_为单位根据—先进后出_庶那么来处理;采用—sp—指向国顶地址,入隹时地址变化为_sp=(sp)-2_.p575.i/o端口的寻址有直接端口寻址和间接端口寻址两种方式;采用8位数端口地址(直接端口寻址)时,可访问的端口地址为_0~255_ ;采用16位数端口地址(间接端口寻址)时,可访问的端口地址为_0-65535_ . p57~ p58三、分析彳算题1、析如下指令的正误,对错误指令说明出错误原因并加以收正:(1)mov [1200],23h (2)mov 1020h,cx(3)mov [1000h],[2000h](4)mov ip,o00h(5)push al(6)out cx,al(7)in al,[80h] (8)mov cl,3300h(1)mov [1200],23h; 未指明数据类型mov byte ptr[1200],23h(2)mov 1020h,cx ; 立即数不能作为目标操作数mov [1020h],cx(3)mov [1000h],[2000h]; 两操作数不能均是内存单元mov byte ptr [1000h],2000h(4)mov ip,000h;ip 不能在mov 指令中出现jmp 000h(5)push al ;操作数必须是16位push ax(6)out cx,al ;cx 不能作为端口地址的间接访问存放器out dx,al(7)in al,[80h];直接端口地址写法错误in al,80h(8)mov cl,3300h ; 两操作数的数据类型不一致mov cx,3300h2.试分析如下程序段执行完后,bx的内容:817fhmov bx,1030h ;(bx)=1030hmov cl,3 ;(cl)=3shl bx,cl ;(bx)=8180hdec bx ;(bx)=817fh4思考与练习题一、选择题1.汇编语言程序中可执行的指令位于()中.ca.数据段b.堆栈段c.代码段d.附加数据段2.以下内容不是标号和变量属性的是().ba.段属性b.地址属性c.偏移属性d.类型属性3.dos功能调用中采用屏幕显示单个字符,其值保存在()存放器.ca.alb.ahc.dld.dh4.dos功能调用中,从键盘读取一个字符并回显的是().aa.01hb.02hc.09hd.0ah5.循环程序设计中,要考虑的核心问题是().da.循环的限制b.选择循环结构c.设置循环参数初始值d.修改循环控制参数6.对于宏指令和子程序,以下说法不正确的选项是().da.宏指令不能简化目标程序b.子程序可以简化目标程序,但执行时间长c.子程序在执行过程中由cpu处理d.宏指令在执行时要保护和恢复现场二、填空题1.汇编语言是一种面向_cpu指令系统_的程序设计语言,采用_指令助记符_表示操作码和操作数,用_符号地址_表示操作数地址.p822.汇编语言的语句可由_名字、操作符、操作数、注释_四局部组成; 其中_操作符_是必须具备旃.p833.机器指令是i旨_发送给cpu的命令_,在运行时由_cpu_执行;伪指令是发送给汇焉程序的命令 ,在汇编过程中由汇编词序进行处理;宏指令是指代表一段源程序,通常用于经常用到的一个程序段_场合.p87、p1074.子程序的根本结构包括_子程序说明、现场保护及恢复、子程序体、子程序返回等几个局部;字程序的参数传递有存放器、堆栈、存储器_等方法.p104、p1055.dos功能调用可完成对_完成对文件、设备、内存_的治理;bios 的主要功能是外设的限制;如系统加电自检、引导装兀及对键盘、磁盘、显示器、打印机、异步串行通信口等的限制.6.给定如下程序段,在每条指令的右边写出指令的含义和操作功能,指出该程序段完成的功能及运行结果:mov ax,0 ;ax=0mov bx,1 ;bx=1mov cx,5 ;cx=5lp: add ax,bx;ax=ax+bxadd bx,2 ;bx=bx+2loop lp;cx=cx-1; 假设cx 中0转lphlt ;停机⑴该程序段完成的功能是_?2n?1_ o05(2)程序运行后:(ax)=_36_ ; (bx)= _11_ ; (cx)= _0_ .【篇三:最新微机血疝与应用勺题参考答案(郑学坚)】列二进制数转换成十进制数和十六进制数① 11010111 ② 10101001参考答案:①215d , d7h ②169d , a9h2.设计算机字长为8位,求机器数e3h分别为有符号、无符号数时对应的值.参考答案:假设e3为有符号数,为-29d;假设e3为无符号数,为227d o3.写出以下字符所对应的ascii码(1)'0'(2) 'a'(3) 'a'参考答案:(1) 30h (2) 41h (3) 61h1.1为什么需要半加器和全加器?它们之间的主要区别是什么?参考答案:在做两个二进制数的加法时,右边第一位(最低有效位) 相加时不用考虑进位位,只要用半加器就可实现相加;除此位外, 其它各位相加都要带进位位相加,要用全加器电路.全加器的输入端有进位输入,而半加器没有.1.2用补码法写出以下减法的步骤:(1)0000 1111b - 0000 1010b = 0000 1111b + 1111 0110b = 1(舍去)0000 0101b = 5 d(2)0000 1100b - 0000 0011b = 0000 1100b + 1111 1101b = 1(舍去)0000 1001b = 9 d第2章作业2.1alu是什么部件?它能完成什么运算功能?试画出其符号.参考答案:alu是算术逻辑部件,它能完成二进制的加减乘除四那么运算,也能进行布尔代数的逻辑运算.2.4累加器有何用处?画出其符号.参考答案:累加器作为alu每次运行结果的暂时存储器,在cpu中起着存放中间结果的作用.除了能装入及输出数据外,还能使存储其中的数据左移或右移.2.5三态输出电路有何意义?其符号如何画?参考答案:三态输出电路能使输出电路与总线脱离,使总线结构具有公共通路的作用.2.6何谓l门及e门?它们在总结结构中有何用处?参考答案:l门即load限制端,是用以使存放器接受数据输入的控制门,又称装入门.e门即enable限制端,是三态输出门,用以使存放器中的数据输出至总线,又称三态输出门. l门和e门的运用可以保证数据在共用总线中有序传输互不干扰.2.8rom和ram各有何特点和用处?参考答案:rom为只能读出的存储器,可用以存放固定的程序和数据.由于半导体存储器技术的开展,目前出现了诸如flash rom 的存储器,它可读可写,并且掉电后写入的信息不丧失. rom通常用于固化生产厂家或开发者的程序或数据,用于启动计算机或限制计算机的工作.ram为可写入又可读出的存储器,可用以随时写入、改写或读出数据,也可用以写入随时有可能改变的用户程序. ram通常用于存储各种动态的输入输出数据、中间结果以及与外部存储器交换的数据或程序.2.10除地线公用处,5根地址线和11根地址线各可选多少个地址?参考答案:5根地址线可选25=32个地址;11根地址线可选211=2048个地址;2.11译码器有何作用?。
《微机原理及应用》教材课后习题参考答案
《80X86/Pentium微型计算机原理及应用》教材课后习题参考答案第三章3-5(1)MOV SI, 2100H 源:立即数;目标:寄存器(2)MOV CX, DISP[BX] 源:基址,EA=BX+DISP,PA=DS×16+BX+DISP;目标:寄存器(3)源:寄存器;目标:寄存器间接寻址EA=SI,PA=DS×16+SI(4)源:基址加变址,EA=BX+SI,PA=DS×16+BX+SI;目标:寄存器(5)源:寄存器;目标:寄存器(6)源:基址,EA=BX+10H,PA= DS×16+BX+10H;目标:寄存器(7)源:寄存器间接,EA=BX,PA= ES×16+BX;目标:寄存器(8)源:带位移量的基址加变址,EA=BX+SI+20H,PA= DS×16+BX+SI+20H;目标:寄存器(9)源:寄存器;目标:寄存器间接,EA=BP,PA= SS×16+BP(10)源:寄存器;目标:存储器,EA=SP-2,PA= SS×16+SP-23-7(1)源操作数错,基址+基址不能用在存储器寻址方式中,只能基址+变量,改成MOV AX, [BX+SI](2)错,V ALUE1和V ALUE2一般为自己定义的变量名称,则此两操作数的组合形式为存储器和存储器,ADD指令无此组合形式(3)错,立即数不能直接传给段寄存器(4)错,CS不能作为目标操作数(5)错,立即数不能作为目标操作数,两个操作数互换位置即可(6)如果V ALUE1是用DW定义的WORD型变量,则此题正确,否则错误(7)错,段寄存器不能直接传给段寄存器(8)错,移位次数超过1时,应该先将移位次数送给CL,改成MOV CL, 3; ROL [BX][DI],CL(9)错,NOT操作符只有一个操作数(10)对,CS不能作为目标操作数,但可以作为源操作数(11)错,不能直接将立即数压入堆栈(12)错,两处错误,1:IN指令应该AL在前,端口地址在后;2:端口地址100H超过8位数能表示的范围,应该先将100H送给DX,改成MOV DX, 100H; IN AL, DX(13)错,LEA指令的第二操作数必需为存储器寻址方式(14)错,CX不能作为寄存器间接寻址方式,应将CX改成BX/BP/SI/DI之一3-8(1)AX=3355H, SP=1FFEH(2)AX=3355H, DX=4466H, SP=1FFCH3-9 BX=4154H, [2F246H]=6F30H3-10 BX=139EH3-11 SI=0180H, DS=2000H3-12(1) CL=F6H(2) [1E4F6H]=5678H(3) BX=9226H, AX=1E40H(4) SI=9226H, [SI]=[1E4F6]=0024H(5) AX=5678H, [09226H]=1234H3-13 AF=0, CF=1, OF=1, SF=0, ZF=03-14(1) MOV AX, 0 XOR AX, AX SUB AX, AX(2) MOV CL, 4ROL BL,CL (或ROR BL, CL)(3) 题中没规定N1和N2是8位还是16位数,现假定都8位数(也可假定是16位数,程序不一样)MOV AH, 0MOV AL, N1IDIV N2MOV M1, ALMOV M2, AH(4) 题目的意思即使BX的b4,b6,b11位清零AND BX, 0F7AFH(5) XOR AX, 4020H(6) TEST DX, 0201H(7) TEST CL, 1JNZ NEXTINC CL (或DEC CL)NEXT:3-15 假设题目的意思理解为编号从1开始(1) LEA BX, BLOCK+(6-1)*2MOV AX, [BX](2) LEA BX, BLOCKMOV AX, 10[BX](3) LEA BX, BLOCKMOV SI, 0MOV AX, 10[BX][SI](4) MOV AX, BLOCK+103-16(1) 结果存在地址是580H端口中,[580H]=60H(2) 结果存在地址是580H端口中,[580H]=8060H(即[580H]=60H, [581H]=80H)(3) 结果存在AL中,AL=[40H]=4FH(4) 结果存在AX中,AL=[40H]=4FH, AH=[41H](题目中没有给出端口41H中的值)(5) 结果存在地址是45H端口中,[45H]=60H(6) 结果存在地址是45H端口中,[45H]=8060H(即[45H]=60H,[46H]=80H)3-17 假定每小题中NUM1和NUM2都是和题中指定的操作数等长,即(1)中NUM1和NUM2为字变量,(2)(3)中为字节变量,(4)中为双字变量(1) MOV AX, NUM2ADD NUM1, AX(2) MOV CX, 4LEA BX, NUM1XOR AL, AL ; AL清零L1: ADD AL, [BX]INC BXLOOP L1MOV RES, AL(3) MOV CX, 8LEA BX, NUM1XOR AX, AXL1: ADD AL, [BX]JNC L2INC AHL2: INC BXLOOP L1MOV AX, WORD PTR RES(4) MOV AX, WORD PTR NUM1ADD WORD PTR NUM2, AXMOV AX, WORD PTR NUM1+1ADC WORD PTR NUM2+1, AX ; (MOV指令不影响CF标志位,否则不能这么写) 3-18(1) MOV CX, 8LEA BX, NUM1XOR AX, AXL1: ADD AL, [BX]DAAJNC L2INC AHL2: INC BXLOOP L1MOV AX, WORD PTR RES(2) MOV AL, NUM1SUB AL, NUM2DASMOV RES, AL差=90H, CF=13-19(1) MOV AL, NUM1MUL NUM2 ; 8位乘8位MOV WORD PTR RES, AX(2) MOV AX, NUM1IMUL NUM2 ;16位乘16位MOV WORD PTR RES, AXMOV WORD PTR RES+2, DX(3)MOV AL, NUM1MOV BL, 46CBWDIV BLMOV WORD PTR RES, AX(4) MOV AX, NUM1CWDIDIV NUM2 (或DIV NUM2)MOV WORD PTR RES, AXMOV WORD PTR RES+2, DX3-20(1)53乘以2MOV AL, 53SHL AL, 1结果106(2) -49乘以2MOV AL, -49 ; -49补码为CFHSHL AL, 1 ;AL=9EH, 真值即为-98结果-98除以2类似3-21(1) BX=009AH(2) BX=15CH(3) BX=8071H(4) BX=10F7H(5) BX=FF1CH3-22(1) DX=[20506]=0006H BX=0004H(2) SP=1FFEH, [SP]=CX=FFFEH(3) CX=BX=0004H(4) AX=8094H, CF=0(5) AL=[20508H]=87H(6) AL=94H+37H+1=CCH, CF=0, AL=32H(7) SI=9(8) DI=9(9) [DI]=[2050A]=AL=94H(10) AX=17C6H, DX=8094H(11) AH=84H, BL=4(12) IP=DX=17C6H3-23(1) 将存储器中以FIRST为起始地址连续10个字节复制到以SECOND为起始地址的地方(2) 将存储器中数据段中以偏移地址0404H为起始地址,连续80H个字节的空间清零3-24MOV BX, 5MUL BXMOV BX, 2DIV BX3-26 MOV BX, 0A80HMOV AL, 5XLAT3-27(1) IP=1256(2) IP=3280H(3) IP=2450H3-28 IP=009A, CS=2000, [SP]=8F, [SP+1]=3DH, [SP+2]=50H, [SP+3]=40H3-29CMP AL, 1JNZ LAB1CMP AL, 2JNZ LAB2CMP AL,4JNZ LAB3最后一个条件(若位0至位2都是0,则顺序执行),相当于没有,因为不管符不符合这个条件,程序都会按顺序执行。
微型计算机原理及应用课后答案侯晓霞
CH01微型计算机概述习题与思考题1.微型计算机由哪些部件组成各部件的主要功能是什么解答:2.8086/8088 CPU由哪两部分组成它们的主要功能各是什么是如何协调工作的解答:协调工作过程:总线接口部件和执行部件并不是同步工作的,它们按以下流水线技术原则来协调管理:①每当8086的指令队列中有两个空字节,或者8088的指令队列中有一个空字节时,总线接口部件就会自动把指令取到指令队列中;②每当执行部件准备执行一条指令时,它会从总线接口部件的指令队列前部取出指令的代码,然后用几个时钟周期去执行指令;在执行指令的过程中,如果必须访问存储器或者输入/输出设备,那么,执行部件就会请求总线接口部件进入总线周期,完成访问内存或者输入/输出端口的操作;如果此时总线接口部件正好处于空闲状态,那么,会立即响应执行部件的总线请求;但有时会遇到这样的情况,执行部件请求总线接口部件访问总线时,总线接口部件正在将某个指令字节取到指令队列中,此时总线接口部件将首先完成这个取指令的操作,然后再去响应执行部件发出的访问总线的请求;③当指令队列已满,而且执行部件又没有总线访问请求时,总线接口部件便进入空闲状态;④在执行转移指令、调用指令和返回指令时,由于程序执行的顺序发生了改变,不再是顺序执行下面一条指令,这时,指令队列中已经按顺序装入的字节就没用了;遇到这种情况,指令队列中的原有内容将被自动消除,总线接口部件会按转移位置往指令队列装入另一个程序段中的指令;3.8086/8088 CPU中有哪些寄存器各有什么用途标志寄存器F有哪些标志位各在什么情况下置位解答:标志寄存器F的标志位:①控制标志:OF、DF、IF、TF;②状态标志:SF、ZF、AF、PF、CF;标志寄存器F的各标志位置位情况:· CF:进位标志位;做加法时出现进位或做减法时出现借位,该标志位置1;否则清0;·PF:奇偶标志位;当结果的低8位中l的个数为偶数时,该标志位置1;否则清0;·AF:半进位标志位;在加法时,当位3需向位4进位,或在减法时位3需向位4借位时,该标志位就置1;否则清0;该标志位通常用于对BCD算术运算结果的调整;·ZF:零标志位;运算结果各位都为0时,该标志位置1,否则清0;·SF:符号标志位;当运算结果的最高位为1时,该标志位置1,否则清0;·TF:陷阱标志位单步标志位;当该位置1时,将使8086/8088进入单步指令工作方式;在每条指令开始执行以前,CPU总是先测试TF位是否为1,如果为1,则在本指令执行后将产生陷阱中断,从而执行陷阱中断处理程序;该程序的首地址由内存的00004H~00007H 4个单元提供;该标志通常用于程序的调试;例如,在系统调试软件DEBUG中的T命令,就是利用它来进行程序的单步跟踪的;·IF:中断允许标志位;如果该位置1,则处理器可以响应可屏蔽中断,否则就不能响应可屏蔽中断;·DF:方向标志位;当该位置1时,串操作指令为自动减量指令,即从高地址到低地址处理字符串;否则串操作指令为自动增量指令;·OF:溢出标志位;在算术运算中,带符号的数的运算结果超出了8位或16位带符号数所能表达的范围时,即字节运算大于十127或小于-128时,字运算大于十32767或小于-32768时,该标志位置位;4.8086/8088系统中存储器的逻辑地址和物理地址之间有什么关系表示的范围各为多少解答:逻辑地址:段地址:偏移地址物理地址:也称为绝对地址,由段基址和偏移量两部分构成;物理地址与系统中的存储空间是一一对应的;逻辑地址与物理地址两者之间的关系为:物理地址=段地址×16+偏移地址每个逻辑段的地址范围:0000:0000H~FFFFH;0001:0000H~FFFFH;…;FFFF:0000H~FFFFH;共有232个地址,但其中有许多地址是重叠的体现出逻辑地址的优势,可根据需要方便地写出逻辑地址,又不影响其准确的物理地址,逻辑地址与物理地址的关系为多对一的关系;物理地址的地址范围:00000H~FFFFFH;5.已知当前数据段位于存储器的A1000H到B0FFFH范围内,问DS=解答:A1000H →A100:0000 以A100H 为段地址的64K 物理地址的范围是:偏移地址为0000H ~FFFFH,即A100:0000H ~A100:FFFFH →A1000H +0000H ~A1000H +0FFFFH =A1000H ~B0FFFH,∴DS =A100H;6.某程序数据段中存有两个字数据1234H 和5A6BH,若已知DS=5AA0H,它们的偏移地址分别为245AH 和3245H,试画出它们在存储器中的存放情况 解答:存放情况如图所示左右两侧的写法均可:7.8086/8088CPU 有哪两种工作模式,它们各有什么特点解答:为了适应各种不同的应用场合,8086/8088CPU 芯片可工作在两种不同的工作模式下,即最小模式与最大模式;所谓最小模式,就是系统中只有一个8086/8088微处理器,在这种情况下,所有的总线控制信号,都是直接由这片8086/8088CPU 产生的,系统中的总线控制逻辑电路被减到最少;该模式适用于规模较小的微机应用系统;最大模式是相对于最小模式而言的,最大模式用在中、大规模的微机应用系统中;在最大模式下,系统中至少包含两个微处理器,其中一个为主处理器,即8086/8088CPU,其它的微处理器称之为协处理器,它们是协助主处理器工作的;8.若8086CPU 工作于最小模式,试指出当CPU 完成将AH 的内容送到物理地址为91001H 的存储单元操作时,以下哪些信号应为低电平:M/IO 、RD 、WR 、BHE /S7、DT/R ;若CPU 完成的是将物理地址91000H 单元的内容送到AL 中,则上述哪些信号应为低电平;若CPU 为8088呢略9.什么是指令周期什么是总线周期什么是时钟周期它们之间的关系如何解答:指令周期----CPU 执行一条指令所需要的时间称为一个指令周期Instruction Cycle;总线周期----每当CPU 要从存储器或I/O 端口存取一个字节称为一次总线操作,相应于某个总线操作的时间即为一个总线周期BUS Cycle;时钟周期----时钟周期是CPU 处理动作的最小时间单位,其值等于系统时钟频率的倒数,时钟周期又称为T 状态;它们之间的关系:若干个总线周期构成一个指令周期,一个基本的总线周期由4个T 组成,我们分别称为T 1~T 4,在每个T 状态下,CPU 完成不同的动作;10. 8086/8088 CPU 有哪些基本操作基本的读/写总线周期各包含多少个时钟周期什么情况下需要插入Tw 周期应插入多少个Tw 取决于什么因素 解答:①8086/8088CPU 最小模式下的典型时序有:存储器读写;输入输出;中断响应;系统复位及总线占用操作;②一个基本的CPU 总线周期一般包含四个状态4321T T T T 、、、,即四个时钟周期; ③在存储器和外设速度较慢时,要在3T 之后插入1个或几个等待状态w T ;④应插入多少个w T 取决于READY 信号的状态,CPU 没有在3T 状态的一开始采样到READY 信号为低电平,就会在3T 和4T 之间插入等待状态w T ,直到采样到READY 信号为高电平;11. 试说明8086/8088工作在最大和最小模式下系统基本配置的差异;8086/8088微机系统中为什么一定要有地址锁存器需要锁存哪些信息略,见书12.试简述8086/8088微机系统最小模式下从存器储读数据时的时序过程;略,见书 CH02 8086/8088指令系统习题与思考题1.假定DS=2000H,ES=2100H,SS=1500H,SI=00A0H,BX=0100H,BP=0010H,数据变量VAL 的偏移地址为0050H,请指出下列指令源操作数是什么寻址方式源操作数在哪里如在存储器中请写出其物理地址是多少 1MOV AX,0ABH 2MOV AX,100H 3MOV AX,VAL 4MOV BX,SI 5MOV AL,VALBX 6MOV CL,BXSI 7MOV VALSI,BX 8MOV BPSI,100 解答:1MOV AX,0ABH寻址方式:立即寻址;物理地址:无 2MOV AX,100H寻址方式:直接寻址;源操作数在存储器中;物理地址:DS16+100H =2000H16+100H =20100H3MOVAX,VAL寻址方式:直接寻址;源操作数在存储器中;物理地址:DS16+VAL =2000H16+0050H =20050H4MOV BX,SI寻址方式:寄存器间接寻址;源操作数在存储器中;物理地址:DS16+SI =2000H16+00A0H =200A0H5MOV AL,VALBX寻址方式:变址寻址;源操作数在存储器中;物理地址:DS16+VAL+BX =2000H16+0050H+0100=20150H 6MOV CL,BXSI寻址方式:基址加变址寻址;源操作数在存储器中;物理地址:DS16+BX+SI =2000H16+0100H+00A0H=201A0H7MOV VALSI,BX寻址方式:寄存器寻址;源操作数在寄存器中;物理地址:无 8MOV BPSI,100寻址方式:立即寻址;物理地址:无2.设有关寄存器及存储单元的内容如下:DS=2000H,BX=0100H,AX=1200H,SI=0002H,20100H=12H,20101H=34H,20102H=56H,20103 =78H,21200=2AH,21201H=4CH,21202H=0B7H,21203H=65H;试说明下列各条指令单独执行后相关寄存器或存储单元的内容;1MOV AX,1800H 2MOV AX,BX3MOV BX,1200H 4MOV DX,1100BX5MOV BXSI,AL 6MOV AX,1100BXSI解答:3.假定BX=0E3H,变量VALUE=79H,确定下列指令执行后的结果操作数均为无符号数;对3、6,写出相应标志位的状态;1ADD VALUE,BX 2AND BX,VALUE3CMP BX,VALUE 4XOR BX,0FFH5DEC BX 6TEST BX,01H解答:4.已知SS=0FFA0H,SP=00B0H,先执行两条把8057H和0F79H分别进栈的PUSH指令,再执行一条POP指令,试画出堆栈区和SP内容变化的过程示意图;标出存储单元的地址解答:5.已知程序段如下:MOV AX,1234HMOV CL,4ROL AX,CLDEC AXMOV CX,4MUL CX试问:1每条指令执行后,AX寄存器的内容是什么2每条指令执行后,CF,SF及ZF的值分别是什么3程序运行结束时,AX及DX寄存器的值为多少6.写出实现下列计算的指令序列;假定X、Y、Z、W、R都为字变量1Z=W+Z+X 2Z=W-X+6-R+93Z=WX/R+6 4Z=W-X/5Y2解答:1Z=W+Z+X7.假定,CL=3,CF=1,试确定下列各条指令单独执行后DX的值;1SHR DX,1 2SHL DL,13SAL DH,1 4SAR DX,CL5ROR DX,CL 6ROL DL,CL7RCR DL,1 8RCL DX,CL解答:8.已知DX=1234H,AX=5678H,试分析下列程序执行后DX、AX的值各是什么该程序完成了什么功能MOV CL,4SHL DX,CLMOV BL,AHSHL BL,CLSHR BL,CLOR DL,BL解答:DX=2345H,AX=6780H;该程序完成的功能如图所示,将DX,AX拼装成双字后,左移四位;9.试分析下列程序段:ADD AX,BXJNC L2SUB AX,BXJNC L3JMP SHORTL5如果AX、BX的内容给定如下:AX BX114C6H 80DCH2B568H 54B7H问该程序在上述情况下执行后,程序转向何处解答:1AX=AX+BX=14C6H+80DCH=95A2H;CF=0;无进位,转移至L2;2方法同1,略10.编写一段程序,比较两个5字节的字符串OLDS和NEWS,如果OLDS字符串不同于NEWS字符串,则执行NEW_LESS,否则顺序执行;解答:编程如下,说明:左测程序为常规编法,两个字符串在一个数据段中;右测的程序要求OLDS在数据段中,NEWS在附加段中,利用串操作的指令是可行的LEA SI,OLDS; LEA SI,OLDSLEA DI,NEWS; LEA DI,NEWSMOV CX,5; MOV CX,5NEXT:MOV AL,SI; CLDMOV BL,DI; REPE CMPSBCMP AL,BL; JNZ NEW_LESSJNZ NEW_LESS;……INC SI; JMP EXITINC DI; NEW_LESS:LOOP NEXT;………… EXIT:……JMP EXITNEW_LESS:……EXIT:……11.若在数据段中从字节变量TABLE相应的单元开始存放了0~15的平方值,试写出包含有XLAT指令的指令序列查找N0~15的平方;设N的值存放在CL中解答:MOV BX,OFFSET TABLE;LEA BX,TABLEMOV CL,NMOV AL,CLXLAT12.有两个双字数据串分别存放在ASC1和ASC2中低字放低地址,求它们的差,结果放在ASC3中低字放低地址;ASC1 DW 578,400ASC2 DW 694,12ASC3 DW ,解答:编程如下,LEA SI,ASC1LEA DI,ASC2LEA BX,ASC3MOV CX,2CLCNEXT:MOV AX,SIMOV DX,DISBB AX,DXMOV BX,AXINC SIINC SIINC DIINC DIINC BXINC BXLOOP NEXTCH03 汇编语言程序设计习题与思考题1.下列语句在存储器中分别为变量分配多少字节空间并画出存储空间的分配图;VAR1 DB 10,2VAR2 DW 5 DUP,0VAR3 DB ‘HOW ARE YOU’,‘$’,3 DUP1,2VAR4 DD -1,1,0解答:字节空间----VAR1:2;VAR2:12;VAR3:19;VAR4:12;存储空间的分配图:DS:0000 0A 02 00 00 00 00 00 00—00 00 00 00 00 00 48 4F0010 57 20 41 52 45 20 59 4F—55 3F 24 01 02 01 02 010020 02 FF FF FF FF 01 00 00—00 00 00 00 002.假定VAR1和VAR2为字变量,LAB为标号,试指出下列指令的错误之处;1ADD VAR1,VAR2 2SUB AL,VAR13JMP LABCX 4JNZ VAR15 MOV 1000H,100 6SHL AL, 4解答:1两个操作数中至少有一个为寄存器;2AL为字节,VAR1为字变量,不匹配;3中不能用CX;4转向地址应为标号;5目的操作数的类型不确定;6SHL指令中,当所移位数超过1时,必须用CL或CX来取代所移位数;3.对于下面的符号定义,指出下列指令的错误;A1 DBA2 DB 10K1 EQU 10241 MOV K1,AX 2MOV A1,AX3CMP A1,A2 4K1 EQU 2048解答:1K1为常量,不能用MOV指令赋值;2A1为字节,AX为字变量,不匹配;3A1未定义,无法做比较指令;4K1重新赋值前,必须用PURGE释放;4.数据定义语句如下所示:FIRST DB 90H,5FH,6EH,69HSECOND DB 5 DUPTHIRD DB 5 DUP自FIRST单元开始存放的是一个四字节的十六进制数低位字节在前,要求:编一段程序将这个数左移两位后存放到自SECOND开始的单元,右移两位后存放到自THIRD开始的单元;注意保留移出部分解答:DATA SEGMENTFIRST DB 90H,5FH,6EH,69HSECOND DB 5 DUPTHIRD DB 5 DUPDATA ENDSCODE SEGMENTASSUME CS:CODE,DS:DATASTART:MOV AX,DATAMOV DS,AXLEA SI,FIRSTLEA DI,SECONDMOV CX,2CLC;左移2位MOV AX,SIINC SIINC SIMOV DX,SIPUSH DXPUSH AXROL DX,CLAND DL,03HMOV DI+4,DLROL AX,CLAND AL,03HMOV BL ,ALPOP AXPOP DXSHL DX,CLSHL AX,CLOR DL,BLMOV DI,AXMOV DI+2,DX;右移2位,类同左移的方法,略MOV AH,4CHINT 21HCODE ENDSEND START5.原14在当前数据区从400H开始的256个单元中存放着一组数据,试编程序将它们顺序搬移到从A000H开始的顺序256个单元中;解答:DATA SEGMENTORG 400HDAT1 DB ...;256 DUPORG 0A000HDAT2 DB ...;256 DUPDATA ENDSSTACK SEGMENTSTACK ENDSCODE SEGMENTASSUME DS:DATA,CS:CODE,SS:STACK,ES:DATASTART: MOV AX,DATAMOV DS,AX;CH3-14LEA SI,DAT1LEA DI,DAT2MOV CX,128AGAIN: MOV AL,SIMOV DI,ALINC SIINC DILOOP AGAIN;CH3-15,将两个数据块逐个单元进行比较,若有错BL=00H,否则BL=FFHLEA SI,DAT1LEA DI,DAT2MOV CX,128NEXT: MOV AL,SIMOV BL,DICMP AL,BLJNZ ERRORINC SIINC DILOOP NEXTMOV BL,0FFHJMP EXITERROR: MOV BL,00HEXIT: MOV AX,4C00HINT 21HCODE ENDSEND START6.试编程序将当前数据区从BUFF开始的4K个单元中均写入55H,并逐个单元读出比较,看写入的与读出的是否一致;若全对,则将ERR单元置0H;如果有错,则将ERR单元置FFH;解答:DATA SEGMENTBUFF DB 1000H DUPERR DBDATA ENDSCODE SEGMENTASSUME CS:CODE,DS:DATASTART: MOV AX,DATAMOV DS,AX;将55H依次放入BUFF开始的4K个单元LEA SI,BUFFMOV CX,1000HMOV AL,55HNTXT: MOV SI,ALINC SILOOP NEXT;取出与55H比较,全对则ERR=0,否则ERR=FFHLEA DI,BUFFLEA SI,ERRMOV CX,1000HNEXT1: MOV AL,DIINC DICMP AL,55HJNZ ERROR;若有一个不同,即置ERR=FFHLOOP NEXT1MOV AL,00HMOV SI,AL;全比较完无错,则置ERR=0JMP EXITERROR: MOV AL,0FFHMOV SI,AL;返回DOSEXIT: MOV AH,4CHINT 21HCODE ENDSEND STARTEND7.在上题中,如果发现有错时,要求在ERR单元中存放出错的数据个数,则程序该如何修改解答:DATA SEGMENTBUFF DB 1000H DUPERR DWDATA ENDSCODE SEGMENTASSUME CS:CODE,DS:DATASTART: MOV AX,DATAMOV DS,AX;将55H依次放入BUFF开始的4K个单元LEA SI,BUFFMOV CX,1000HMOV AL,55HNTXT: MOV SI,ALINC SILOOP NEXT;取出与55H比较LEA DI,BUFFLEA SI,ERRMOV DX,0000HMOV CX,1000HNEXT1: MOV AL,DIINC DICMP AL,55HJZ NEXT2;若相同,则比较下一个INC DX;否则将放出错个数的DX加1NEXT2:LOOP NEXT1MOV SI,DXEXIT: MOV AH,4CHINT 21HCODE ENDSEND STARTEND8.试编写程序段,完成将数据区从0100H开始的一串字节数据逐个从F0H端口输出,已知数据串以0AH为结束符;略9.原24内存中以FIRST和SECOND开始的单元中分别存放着两个4位用压缩BCD码表示的十进制数, 低位在前;编程序求这两个数的和,仍用压缩BCD码表示, 并存到以THIRD开始的单元;解答:DATA SEGMENTFIRST DW 3412HSECOND DW 7856HTHIRD DB ,,DATA ENDSSTACK SEGMENTSTACK ENDSCODE SEGMENTASSUME DS:DATA,CS:CODE,SS:STACK,ES:DATASTART: MOV AX,DATAMOV DS,AXLEA SI,FIRSTLEA DI,SECONDLEA BX,THIRDMOV CX,2CLCAGAIN: MOV AL,BYTE PTRSIMOV DL,BYTE PTRDIADC AL,DLDAAMOV BYTE PTRBX,ALINC SIINC DIINC BXLOOP AGAINJC AAMOV BYTE PTRBX,0JMP EXITAA: MOV BYTE PTRBX,1EXIT: MOV AX,4C00HINT 21HCODE ENDSEND START10.原27设字变量单元A、B、C存放有三个数,若三个数都不为零,则求三个数的和,存放在D中;若有一个为零,则将其余两个也清零,试编写程序;解答:DATA SEGMENTA DBB DBC DBD DWDATA ENDSSTACK SEGMENTSTACK ENDSCODE SEGMENTASSUME DS:DATA,CS:CODE,SS:STACK,ES:DATASTART: MOV AX,DATAMOV DS,AXLEA SI,ALEA DI,DMOV AL,SICMP AL,00JZ ZEROADC DX,ALLEA SI,BMOV AL,SICMP AL,00JZ ZEROADC DX,ALLEA SI,CMOV AL,SICMP AL,00JZ ZEROADC DX,ALMOV DI,DXJMP EXITZERO: MOV AL,0MOV A,ALMOV B,ALMOV C,ALEXIT: MOV AX,4C00HINT 21HCODE ENDSEND START11.16试编程序,统计由TABLE开始的128个单元中所存放的字符“A”的个数,并将结果存放在DX中;解答:DATA SEGMENTTABLE DB X1,X2, (X128)DATA ENDSSTACK SEGMENTSTACK ENDSCODE SEGMENTASSUME DS:DATA,CS:CODE,SS:STACK,ES:DATASTART: MOV AX,DATAMOV DS,AXLEA SI,TABLEMOV DX,0MOV CX,128AGAIN: MOV AL,SICMP AL,'A'JNZ NEXTINC DXNEXT: INC SILOOP AGAINMOV AX,4C00HINT 21HCODE ENDSEND START12.试编制一个汇编语言程序,求出首地址为DATA的1000个字数组中的最小偶数,并把它存放于MIN单元中;方法:利用书上排序的例题做相应的修改即可,略13.在上题中,如果要求同时找出最大和最小的偶数,并把它们分别存放于MAX和MIN单元中,试完成程序;解答:略方法同第12题;14.28在DATA字数组中存放有100H个16位补码数,试编写一程序求它们的平均值,放在AX中,并求出数组中有多少个数小于平均值,将结果存于BX中;略15.17编写一个子程序,对AL中的数据进行偶校验,并将经过校验的结果放回AL中;解答:DATA SEGMENTCOUNT EQU 7DATA ENDSSTACK SEGMENTSTACK ENDSCODE SEGMENTASSUME DS:DATA,CS:CODE,SS:STACK,ES:DATASTART: MOV AX,DATAMOV DS,AXPUSH AXMOV DX,0MOV CX,COUNTAGAIN: RCR AL,1JNC LINC DXL: LOOP AGAINPOP AXTEST DX,01JZ EXITOR AL,80EXIT: MOV AX,4C00HINT 21H;ANOTHER METHORDJP EXITOR AL,80HEXIT: MOV AX,4C00HINT 21HCODE ENDSEND START16.18利用上题的予程序,对DATA开始的256个单元的数据加上偶校验,试编程序; 解答:DATA SEGMENTDAT DB ...;256 DUPRESULT DB ...;256 DUPNUM EQU 256COUNT EQU 7DATA ENDSSTACK SEGMENTSTACK ENDSCODE SEGMENTASSUME DS:DATA,CS:CODE,SS:STACK,ES:DATASTART: MOV AX,DATAMOV DS,AXLEA SI,DATLEA DI,RESULTMOV CX,NUMNEXT: MOV AL,SICALL SUB1MOV DI,AL;MOV SI,ALINC SIINC DILOOP NEXTMOV AX,4C00HINT 21HSUB1 PROCPUSH AXMOV DX,0MOV CX,COUNTAGAIN: RCR AL,1JNC LINC DXL: LOOP AGAINPOP AXTEST DX,01JZ QUITOR AL,80HQUIT: RETSUB1 ENDPCODE ENDSEND START17.19试编写程序实现将键盘输入的小写字母转换成大写字母并输出; 解答:DATA SEGMENTMESS DB 'THE INPUT IS NOT CORRECT.',0DH,0AH,'$'DATA ENDSSTACK SEGMENTSTACK ENDSCODE SEGMENTASSUME DS:DATA,CS:CODE,SS:STACK,ES:DATASTART: MOV AX,DATAMOV DS,AXNEXT: MOV AH,01HINT 21HCMP AL,'Q'JZ EXITCMP AL,'a'JB ERRORCMP AL,'z'JA ERRORSUB AL,20HMOV AH,02HMOV DL,ALINT 21HJMP NEXTERROR: MOV AH,09HLEA DX,MESSINT 21HJMP NEXTEXIT: MOV AX,4C00HINT 21HCODE ENDSEND START18.从键盘接收20个字符,按键入顺序查找最大的字符,并显示输出; 解答:DATA SEGMENTDAT DB 20 DUPDATA ENDSSTACK SEGMENTSTACK ENDSCODE SEGMENTASSUME DS:DATA,CS:CODE,SS:STACK,ES:DATASTART: MOV AX,DATAMOV DS,AX;从键盘接收20个字符,并送DAT中保存LEA SI,DATMOV CX,20NEXT: MOV AH,01HINT 21HMOV SI,ALINC SILOOP NEXT;比较20个字符中的最大字符,并放入AL中MOV CX,19LEA SI,DATMOV AL,SIINC SINEXT1: CMP AL,SIJAE LLMOV AL,SILL: INC SILOOP NEXT1;将最大的字符的ASCII码由AL送DL显示MOV DL,ALMOV AH,2HINT 21H;返回DOSMOV AX,4C00HINT 21HCODE ENDSEND START19.29编写汇编程序,接收从键盘输入的10个数,输入回车符表示结束,然后将这些数加密后存于BUFF缓冲区中;加密表为:输入数字:0,1,2,3,4,5,6,7,8,9;密码数字:7,5,9,1,3,6,8,0,2,4解答:DATA SEGMENTBUFF DB 10 DUPTABLE DB 7,5,9,1,3,6,8,0,2,4DATA ENDSSTACK SEGMENTSTACK ENDSCODE SEGMENTASSUME DS:DATA,CS:CODE,SS:STACK,ES:DATASTART: MOV AX,DATAMOV DS,AX;LEA DI,BUFFNEXT: MOV AH,01HINT 21H;从键盘上接收单个字符CMP AL,0AH;与0AH比,判是否要结束JZ EXITSUB AL,30H;否则,将0~9的ASCII码转换为十进制数LEA BX,TABLEXLAT;用查表指令进行加密MOV DI,ALINC DIJMP NEXT;退出并返回DOSEXIT: MOV AX,4C00HINT 21HCODE ENDSEND START20.23有一个100个字节的数据表,表内元素已按从大到小的顺序排列好,现给定一元素,试编程序在表内查找,若表内已有此元素,则结束;否则,按顺序将此元素插入表中适当的位置,并修改表长;略21.26在当前数据段DS,偏移地址为DATAB开始的顺序80个单元中,存放着某班80个同学某门考试成绩;按要求编写程序:①编写程序统计≥90分;80分~89分;70分~79分;60分~69分,<60分的人数各为多少,并将结果放在同一数据段、偏移地址为BTRX开始的顺序单元中;②试编程序,求该班这门课的平均成绩为多少,并放在该数据段的AVER单元中;解答:;统计学生成绩DATA SEGMENTDATAB DB X1,X2,...,X80N EQU $-DATABORG 100HBTRX DW 0S8 DW 0S7 DW 0S6 DW 0S5 DW 0ORG 110HAVER DWDATA ENDSSTACK SEGMENT STACKSTA DB 20 DUP 0TOP EQU $—STASTACK ENDSCODE SEGMENTMAIN PROC FARASSUME CS:CODE, DS:DATA, SS:STACK START: PUSH DSSUB AX,AXPUSH AXMOV AX,DATAMOV DS,AXMOV CX,NMOV BX,0000HMOV DX,0000HLEA SI,DATAB ;成绩表首地址COMPARE:MOV AL,SICMP AL,60 ;<60JL FIVECMP AX,70 ;<70JL SIXCMP AX,80 ;<80JL SEVENCMP AX,90 ;<90JL EIGHTINC S9JMP CHAEIGHT: INC S8JMP CHASEVEN:INC S7JMP CHASIX: INC S6JMP CHAFIVE:INC S5JMP CHACHA:ADD BX,ALJNC NEXTADC DX,0NEXT: INC SI ;循环学生人数LOOP COMPAREMOV AX,BXMOV CX,NDIV CXMOV AVER,AXMOV AH,4CHINT 21HRETMAIN ENDPCODE ENDSEND STARTCH04 存储系统习题与思考题1.存储器的哪一部分用来存储程序指令及像常数和查找表一类的固定不变的信息哪一部分用来存储经常改变的数据解答:只读存储器ROM;随机存储器RAM;2.术语“非易失性存储器”是什么意思PROM和EPROM分别代表什么意思解答:“非易失性存储器”是指当停电后信息会丢失;PROM--可编程序的只读存储器PROMProgrammable ROM,EPROM--可擦除的可编程的只读存储器EPROMErasible Programmable ROM;3.微型计算机中常用的存储器有哪些它们各有何特点分别适用于哪些场合解答:略4.现代计算机中的存储器系统采用了哪三级分级结构,主要用于解决存储器中存在的哪些问题解答:目前在计算机系统中通常采用三级存储器结构,即使用高速缓冲存储器、主存储器和辅助存储器,由这三者构成一个统一的存储系统;从整体看,其速度接近高速缓存的速度,其容量接近辅存的容量,而位成本则接近廉价慢速的辅存平均价格;三级结构主要用于解决速度、容量和成本的问题;5.试比较静态RAM和动态RAM的优缺点,并说明有何种方法可解决掉电时动态RAM中信息的保护;解答:静态RAM----存储一位信息的单元电路可以用双极型器件构成,也可用MOS器件构成;双极型器件构成的电路存取速度快,但工艺复杂,集成度低,功耗大,一般较少使用这种电路,而采用MOS器件构成的电路;静态RAM的单元电路通常是由6个MOS管子组成的双稳态触发器电路,可以用来存储信息“0”或者“1”,只要不掉电,“0”或“1”状态能一直保持,除非重新通过写操作写入新的数据;同样对存储器单元信息的读出过程也是非破坏性的,读出操作后,所保存的信息不变;使用静态RAM的优点是访问速度快,访问周期达20~40ns;静态RAM工作稳定,不需要进行刷新,外部电路简单,但基本存储单元所包含的管子数目较多,且功耗也较大,它适合在小容量存储器中使用;动态RAM----与静态RAM一样,由许多基本存储单元按行和列排列组成矩阵;最简单的动态RAM的基本存储单元是一个晶体管和一个电容,因而集成度高,成本低,耗电少,但它是利用电容存储电荷来保存信息的,电容通过MOS管的栅极和源极会缓慢放电而丢失信息,必须定时对电容充电,也称刷新;另外,为了提高集成度,减少引脚的封装数,DRAM的地址线分成行地址和列地址两部分,因此,在对存储器进行访问时,总是先由行地址选通信号RAS把行地址送入内部设置的行地址锁存器,再由列地址选通信号CAS把列地址送入列地址锁存器,并由读/写信号控制数据的读出或写入;所以刷新和地址两次打入是DRAM芯片的主要特点;动态RAM需要配置刷新逻辑电路,在刷新周期中,存储器不能执行读/写操作,但由于它的单片上的高位密度单管可组成和低功耗每个存储单元功耗为,而静态RAM为,及价格低廉等优点,使之在组成大容量存储器时作为主要使用器件;6.计算机的电源掉电后再接电时系统中无掉电保护装置,存储在各类存储器中的信息是否仍能保存试从各类存储器的基本原理上来分析说明;解答:略7.什么是存储器的位扩充和字扩充方式它们分别用在什么场合解答:位扩充--如果存储器芯片的容量满足存储器系统的要求,但其字长小于存储器系统的要求,这时,就需要用多片这样的芯片通过位扩充的方法来满足存储器系统对字长的要求;字扩充--如果存储器芯片的字长符合存储器系统的要求,但其容量太小,就需要使用多片这样的芯片通过字扩充或容量扩充的方法来满足存储器系统对容量的要求; 8.要用64K×1的芯片组成64K×8的存储器需要几片芯片要用16K×8的芯片组成64K×8的存储器需要几片芯片解答:8片;4片;9.试画出容量为4K×8的RAM连接图CPU用8088,RAM用2114—1K4,要求RAM地址从0400H开始,并写出各芯片的地址分配范围;解答:地址分配范围:10. 试画出容量为12K ×8的ROM 连接图CPU 用8088,EPROM 用2716—2K8,并写出各芯片的地址分配范围; 解答:方法同上,略11. 在上题基础上,若要求ROM 地址区从1000H 开始,硬件设计该如何修改并写出各芯片的地址分配范围;若要求ROM 地址区从C000H 开始,硬件设计又该如何修改并写出各芯片的地址分配范围;解答:若ROM 的地址区从1000H 开始,则硬件设计时,将2716-1~2716-6的片选信号CS分别接至27~y y 即可;若ROM 的地址区从C000H 开始,则硬件设计时,在第10题的基础上,译码器的A 、B 、C 接法不变,将A 14、A 15经与门与译码器的G 1相连,2A G 、2B G 接地即可;译码表略 12.一台8位微机系统CPU 为8088需扩展内存16K,其中ROM 为8K,RAM 为8K;ROM 选用EPROM2716,RAM 选用2114,地址空间从0000H 开始,要求ROM 在低地址,RAM 在高地址,连续存放;试画出存储器组构图,并写出各芯片的地址分配范围; 解答:略13.试画出容量为32K ×8的ROM 连接图CPU 用8088, ROM 地址区从8000H 开始,并写出各芯片的地址分配范围;EPROM 用8K ×8的2764,地址线:A 0~A 12,数据线:O 0~O 7, 片选:CE ,输出允许:OE ; 解答:14.什么是高速缓冲存储器在微机中使用高速缓冲存储器的作用是什么解答:略15.何谓高速缓冲存储器的命中试说明直接映像、全相联映像、组相联映像等地址映像方式的基本工作原理;解答:Cache控制器将来自CPU的数据读写请求,转向Cache存储器,如果数据快已在Cache中,称为一次命中;直接映象方式—是每个主存地址映象到Cache中的一个指定地址的方式称为直接映象;全相联映象方式--是最灵活但成本最高的一种方式,如图4-26所示,它允许主存中的每一个字块映象到Cache存储器的任何一个字块位置上,也允许从确实已被占满的Cache存储器中替换出任何一个旧字块;组相联映象方式--是全相联映象和直接映象的一种折衷方案;这种方法将存储空间分成若干组,各组之间是直接映象,而组内各块之间则是全相联映象;16.什么是虚拟存储器它的作用是什么解答:虚拟存储器是建立在主存-辅存物理结构基础之上,由附加硬件装置及操作系统存储管理软件组成的一种存储体系,它将主存和辅存的地址空间统一编址,形成一个庞大的存储空间;在这个大空间里,用户自由编程,完全不必考虑程序在主存是否装得下,或者放在辅存的程序将来在主存中的实际位置;编好的程序由计算机操作系统装入辅助存储器,程序运行时,附加的辅助硬件机构和存储管理软件会把辅存的程序一块块自动调入主存由CPU执行,或从主存调出;CH05 定时与计数习题与思考题1.什么叫端口端口通常有哪几种各有什么特点解答:为了提供CPU与扩展部件和接口电路直接进行操作的“通道”,每个部件或接口内部都包含有一组寄存器,这些寄存器通常称为端口,每个端口有一个端口地址;当CPU 与它们进行通信时,不同的信息通过不同的端口地址与不同的寄存器进行交互;端口通常分为三类:用来传输数据的称为数据端口;用来存放设备或者部件状态的称为状态端口;用来存放CPU发出的命令的称为控制端口;CPU通过数据端口完成数据传输,因此,数据端口一般是可读可写的;CPU通过状态端口可以检测外设和接口部件当前的状态,因此,状态端口一般是只读的;CPU通过控制端口传输命令以便控制接口和设备的动作,因此,控制端口一般是只写的;2.试说明8253的内部结构包括哪几个主要功能模块解答:1 数据总线缓冲器;这是8253与CPU数据总线连接的8位、双向、三态缓冲器;CPU用输入输出指令对8253进行读写的所有信息都是通过该缓冲器传送的,内容包括:CPU在初始化编程时写入8253的控制字;CPU向8253的某一通道写入的计数值;。
大学_《微型计算机原理及应用》(吴宁著)课后习题答案下载
《微型计算机原理及应用》(吴宁著)课后习题答案下载《微型计算机原理及应用》(吴宁著)内容提要目录第1章计算机基础1.1 数据、信息、媒体和多媒体1.2 计算机中数值数据信息的表示1.2.1 机器数和真值1.2.2 数的表示方法——原码、反码和补码1.2.3 补码的运算1.2.4 定点数与浮点数1.2.5 BCD码及其十进制调整1.3 计算机中非数值数据的信息表示1.3.1 西文信息的表示1.3.2 中文信息的表示1.3.3 计算机中图、声、像信息的表示1.4 微型计算机基本工作原理1.4.1 微型计算机硬件系统组成1.4.2 微型计算机软件系统1.4.3 微型计算机中指令执行的基本过程 1.5 评估计算机性能的主要技术指标1.5.1 CPU字长1.5.2 内存储器与高速缓存1.5.3 CPU指令执行时间1.5.4 系统总线的传输速率1.5.5 iP指数1.5.6 优化的内部结构1.5.7 I/O设备配备情况1.5.8 软件配备情况习题1第2章 80x86/Pentium微处理器2.1 80x86/Pentium微处理器的内部结构 2.1.1 8086/8088微处理器的基本结构2.1.2 80386CPU内部结构2.1.3 80x87数学协处理器2.1.4 Pentium CPU内部结构2.2 微处理器的主要引脚及功能2.2.1 8086/8088 CPU引脚功能2.2.2 80386 CPU引脚功能2.2.3 Pentium CPU引脚功能2.3 系统总线与典型时序2.3.1 CPU系统总线及其操作2.3.2 基本总线操作时序2.3.3 特殊总线操作时序2.4 典型CPU应用系统2.4.1 8086/8088支持芯片2.4.2 8086/8088单CPU(最小模式)系统 2.4.3 8086/8088多CPU(最大模式)系统 2.5 CPU的工作模式2.5.1 实地址模式2.5.2 保护模式2.5.3 虚拟8086模式2.5.4 系统管理模式2.6 指令流水线与高速缓存2.6.1 指令流水线和动态分支预测2.6.2 片内高速缓存2.7 64位CPU与多核微处理器习题2第3章 80x86/Pentium指令系统3.1 80x86/Pentium指令格式3.2 80x86/Pentium寻址方式3.2.1 寻址方式与有效地址EA的概念 3.2.2 各种寻址方式3.2.3 存储器寻址时的段约定3.3 8086/8088 CPU指令系统3.3.1 数据传送类指令3.3.2 算术运算类指令3.3.3 逻辑运算与移位指令3.3.4 串操作指令3.3.5 控制转移类指令3.3.6 处理器控制类指令3.4 80x86/Pentium CPU指令系统3.4.1 80286 CPU的增强与增加指令 3.4.2 80386 CPU的增强与增加指令 3.4.3 80486 CPU增加的指令3.4.4 Pentium系列CPU增加的指令 3.5 80x87浮点运算指令3.5.1 80x87的数据类型与格式3.5.2 浮点寄存器3.5.3 80x87指令简介习题3第4章汇编语言程序设计4.1 程序设计语言概述4.2 汇编语言的程序结构与语句格式 4.2.1 汇编语言源程序的框架结构4.2.2 汇编语言的语句4.3 汇编语言的伪指令4.3.1 基本伪指令语句4.3.2 80x86/Pentium CPU扩展伪指令 4.4 汇编语言程序设计方法4.4.1 程序设计的基本过程4.4.2 顺序结构程序设计4.4.3 分支结构程序设计4.4.4 循环结构程序设计4.4.5 子程序设计与调用技术4.5 模块化程序设计技术4.5.1 模块化程序设计的特点与规范4.5.2 程序中模块间的关系4.5.3 模块化程序设计举例4.6 综合应用程序设计举例4.6.1 16位实模式程序设计4.6.2 基于32位指令的实模式程序设计 4.6.3 基于多媒体指令的实模式程序设计 4.6.4 保护模式程序设计4.6.5 浮点指令程序设计4.7 汇编语言与C/C 语言混合编程4.7.1 内嵌模块方法4.7.2 多模块混合编程习题4第5章半导体存储器5.1 概述5.1.1 半导体存储器的分类5.1.2 存储原理与地址译码5.1.3 主要性能指标5.2 随机存取存储器(RAM)5.2.1 静态RAM(SRAM)5.2.2 动态RAM(DRAM)5.2.3 随机存取存储器RAM的应用5.3 只读存储器(ROM)5.3.1 掩膜ROM和PROM5.3.2 EPROM(可擦除的PROM)5.4 存储器连接与扩充应用5.4.1 存储器芯片选择5.4.2 存储器容量扩充5.4.3 RAM存储模块5.5 CPU与存储器的典型连接5.5.1 8086/8088 CPU的'典型存储器连接5.5.2 80386/Pentium CPU的典型存储器连接 5.6 微机系统的内存结构5.6.1 分级存储结构5.6.2 高速缓存Cache5.6.3 虚拟存储器与段页结构习题5第6章输入/输出和中断6.1 输入/输出及接口6.1.1 I/O信息的组成6.1.2 I/O接口概述6.1.3 I/O端口的编址6.1.4 简单的I/O接口6.2 输入/输出的传送方式6.2.1 程序控制的输入/输出6.2.2 中断控制的输入/输出6.2.3 直接数据通道传送6.3 中断技术6.3.1 中断的基本概念6.3.2 中断优先权6.4 80x86/Pentium中断系统6.4.1 中断结构6.4.2 中断向量表6.4.2 中断响应过程6.4.3 80386/80486/Pentium CPU中断系统6.5 8259A可编程中断控制器6.5.1 8259A芯片的内部结构与引脚6.5.2 8259A芯片的工作过程及工作方式 6.5.3 8259A命令字6.5.4 8259A芯片应用举例6.6 82380可编程中断控制器6.6.1 控制器功能概述6.6.2 控制器主要接口信号6.7 中断程序设计6.7.1 设计方法6.7.2 中断程序设计举例习题6第7章微型机接口技术7.1 概述7.2 可编程定时/计数器7.2.1 概述7.2.2 可编程定时/计数器82537.2.3 可编程定时/计数器82547.3 可编程并行接口7.3.1 可编程并行接口芯片8255A7.3.2 并行打印机接口应用7.3.3 键盘和显示器接口7.4 串行接口与串行通信7.4.1 串行通信的基本概念7.4.3 可编程串行通信接口8251A7.4.3 可编程异步通信接口INS82507.4.4 通用串行总线USB7.4.5 I2C与SPI串行总线7.5 DMA控制器接口7.5.1 8237A芯片的基本功能和引脚特性 7.5.2 8237A芯片内部寄存器与编程7.5.3 8237A应用与编程7.6 模拟量输入/输出接口7.6.1 概述7.6.2 并行和串行D/A转换器7.6.3 并行和串行A/D转换器习题7第8章微型计算机系统的发展8.1.1 IBM PC/AT微机系统8.1.2 80386、80486微机系统8.1.3 Pentium及以上微机系统8.2 系统外部总线8.2.1 ISA总线8.2.2 PCI局部总线8.2.3 AGP总线8.2.4 PCI Express总线8.3 网络接口与网络协议8.3.1 网络基本知识8.3.2 计算机网络层次结构8.3.3 网络适配器8.3.4 802.3协议8.4 80x86的多任务保护8.4.1 保护机制与保护检查8.4.2 任务管理的概念8.4.3 控制转移8.4.4 虚拟8086模式与保护模式之间的切换 8.4.5 多任务切换程序设计举例习题8参考文献《微型计算机原理及应用》(吴宁著)目录本书是普通高等教育“十一五”国家级规划教材和国家精品课程建设成果,以教育部高等学校非计算机专业计算机基础课程“基本要求V4.0”精神为指导,力求做到“基础性、系统性、实用性和先进性”的统一。
《微型计算机原理及应用》课后习题答案
《微型计算机原理及应用》习题解答第一章基础知识1.1 解释题(1)微处理器【解答】由大规模集成电路芯片构成的中央处理器(CPU),叫做微处理器。
(2)微型计算机【解答】以微处理器为基础,配以内存储器、输入输出接口电路、总线以及相应的辅助电路而构成的计算机裸机,叫做微型计算机。
(3)微型计算机系统【解答】微型计算机系统由硬件系统和软件系统组成。
即由微型计算机、配以相应的外部设备(如打印机、显示器、键盘、磁盘机等),再配以足够的软件而构成的系统。
(4)单板机【解答】将微处理器、RAM、ROM以及I/O接口电路,再配上相应的外设(如小键盘、LED显示器等)和固化在ROM中的监控程序等,安装在一块印刷电路板上构成的微型计算机系统称为单板机。
(5)运算器【解答】运算器是直接完成各种算术运算、逻辑运算的部件,主要由ALU(Arithmetic and Logic Unit,算术逻辑部件)、通用寄存器、标志寄存器等组成。
(6)地址总线【解答】地址总线是CPU对内存或外设进行寻址时,传送内存及外设端口地址的一组信号线。
地址总线的条数多少决定了CPU的寻址能力。
(7)数据总线【解答】数据总线是CPU与内存或外设进行信息交换时,所用的一组数据信号线。
它决定了CPU 一次并行传送二进制信息的位数,反映出CPU的“字长”这个重要性能指标。
(8)控制总线【解答】控制总线是在CPU与外部部件之间传送控制信息(如读/写命令、中断请求命令等)的一组信号线。
1-2 单片机应包括哪些基本部件?其主要应用于哪些领域?【解答】一般单片机芯片中包括微处理器、RAM、ROM、I/O接口电路、定时器/计数器,有的还包括A/D、D/A转换器等。
其主要应用于智能化仪器仪表及工业控制领域。
1-3 按图1-11和图1-12,写出取第二条指令操作码和执行第二条指令的过程。
【解答】ADD AL,12H指令的取指过程:1)IP的值(002H)送入地址寄存器AR;2)IP的内容自动加1,变为003H;3)AR将地址码通过地址总线送到存储器的地址译码器,经译码后选中002H单元;4)微处理器给出读命令MEMR;5)所选中的002H单元内容04H送上数据总线DB;6)数据总线DB上的数据04H送到数据寄存器DR;7)因是取指操作,取出的是指令操作码04H,即由DR送入指令寄存器IR;8)IR中的操作码经指令译码器ID译码后,通过PLA发出执行该指令的有关控制命令。
(完整word版)《微机原理及应用》习题答案
(完整word版)《微机原理及应用》习题答案《微机原理及应用》习题答案教材:《80X86/Pentium微型计算机原理及应用》答案第一章计算机基础1-3(1)01101110 真值=110(2)10001101 真值=-131-4(1)+010111[+010111]原=[+010111]反=[+010111]补=00010111 (2) +101011[+101011]原=[+101011]反=[+101011]补=00101011 (3) –101000[-101000]原=10101000 [-101000]反=11010111 [-101000]补=11011000(4) -111111[-111111]原=10111111 [-111111]反=11000000 [-111111]补=110000011-6(1) [x1+y1]补=[x1]补+ [y1]补=00010100+00100001=00110101(2)[x2-y2]补=[x2]补+ [-y2]补=11101100+00100001=000011011-7 (1)85+60解:[-85]补=10101011 [60]补=00111100[-85]补+[60]补=10101011+00111100=11100111 (11100111)补=10011001 真值=-25CS=0,CP=0, CS⊕CP=0 无溢出(4)-85-60[-85]补=10101011 [-60]补=11000100[-85]补+[-60]补=10101011+11000100=101101111 CS=1, CP=0 CS⊕CP=1 有溢出1-8(1) [x]补+ [y]补=01001010+01100001=10101011 CS=0, CP=1 CS⊕CP=1 有溢出(2) [x]补- [y]补=[x]补+ [-y]补=01001010- 01100001=01001010+10101010=100010110CS=1, CP=1 CS⊕CP=0 无溢出1-9(1) (127)10=(000100100111)BCD(2) (74)H=(116)10=(000100010110)BCD1-10(1) 41H 代表A(2) 72H 代表r(3) 65H 代表e(4) 20H 代表SP1-14(1) 69.57(69.57)10=(1000101.100)B=0.1000101100 X 27=0.1000101100 X 2+111浮点规格数为011101000101(2)-38.405(-38.405)10=(-100110.011)B-100110.011= -0.100110011 x 26 = - 0.100110011 x 2110浮点规格数为011011001100(3) - 0.3125(-0.3125)10=(-0.0101)2=(-0.101)2 x 2-001浮点规格数为1111110100001.+0.008342.(+0.00834)10=(0.000000100010001)2=(0.100010001)2 x 2-1103.浮点规格数为1010010001004.1-155.(1) (69.57)10=(1000101.10010001111010111)26. =(1.00010110010001111010111)2 x 21107. p=6+127=133=(10000101)28.单精度浮点数为010000101000101100100011110101119.(2)(-38.405)10=(-100110.011001111010111000)210. = - (1.00110011001111010111000)2 x 210111. p=5+127=132=(10000100)212.单精度浮点数为1100001000011001100111101011100013.(3) (-0.3125)10=(-0.0101)2=(-1.01)2 x 2-1014. p=-2+127=125=(1111101)215.单精度浮点数为10111110101000000000000000000000第二章 80X86/Pentium 微处理器2-3IO/M DT/R DEN RD WR读存储器 0 0 0 0 1写存储器 0 1 0 1 02-17PA=CS x 16+IP IP的范围为0000H~FFFFH 而CS为A000H因此PA的范围即现行代码段可寻址的存储空间范围为A0000H~AFFFFH2-201234ABCDH=00010010001101001010101111001101 BPA=SS x 16+SP=A0000H+0100H=A0100H栈顶SP=0100H-4=00FCH11001101 A00FCH101010110011010000010010 A0100F2-21(1) 1278H+3469H=0001 0010 0111 1000+0011 0100 0110 1001=0100 0110 1110 0001SF=0 ZF=0 AF=1 PF=1 CF=0 OF=0(2) 54E3H-27A0H=0101 0100 1110 0011+1101 1000 0110 0000=1 0010 1101 0100 0011SF=0 ZF=0 AF=1 PF=0 CF=0 OF=0当进行16位或8位加或减运算时,若最高位产生进位或借位时,将CF置1,否则为0,当进行带符号数补码运算时,运算结果超出了机器所能表示的数值范围,就产生溢出,将OF置1,否则OF置0,即OF用来表示有符号数运算的溢出,而CF则用来表示无符号数运算的溢出。
微型计算机原理及应用课后习题答案教材
习题一一、单选题1.CDBCA A二、填空题1. 8086的数据总线为16 位,地址总线为20 位,时钟频率 5 MHz,支持1M 容量主存空间。
2. 计算机的运算和控制核心称为处理器,英文为Processor/CPU ,微型计算机中的处理器常采用一块大规模集成电路芯片,称之为微处理器。
3.微型计算机系统可分为三个层次:微处理器、微型计算机、微型计算机系统。
4. 微型计算机按体积的大小可分为:台式电脑,英文为Desktop PC ;笔记本电脑,英文为Notebook PC ;平板电脑,英文为Tablet PC ;手持电脑,英文为Handheld PC 。
5. 处理器的性能用字长、时钟频率、集成度等基本的技术参数来衡量。
6. 指令流水是指将完成一条指令的全过程分解为多个子过程,每个子过程于其他子过程并行进行。
7. 软件按照其完成的功能分为系统软件和应用软件。
应用软件是为解决某个具体问题而设计的程序及其文档。
8. 可以把应用软件分为两大类,通用应用软件和专用应用软件。
通用应用软件用于所有的领域及行业,例如:文字处理软件。
专用应用软件用于特定的专业领域及行业。
三、简答题1. 数值协处理器和浮点处理单元是什么关系?答:数值协处理器和浮点处理单元的功能是一样的,用于复杂的数学运算。
不同之处在于数值协处理器是一个独立的芯片,通过总线与微处理器(或主处理器)相连,用于80386及以前低档CPU的微机系统。
而浮点处理单元是主处理器芯片的一个功能单元,从80486开始数值协处理器的功能被集成在CPU内部了。
2. 总线信号分成哪三组信号?答:数据总线、地址总线、控制总线。
3.在计算机技术中,人工智能包括哪些内容?答:包括虚拟现实、知识系统和机器人。
4. Cache是什么意思?答:Cache指的是高速缓冲存储器5. ROM BIOS是什么?答:位于只读存储器ROM中的基本输入输出系统6. 中断是什么?中断(Interrupt)是由于外部或内部的中断事件发生,微处理器暂时停止正在执行的程序,转向事先安排好的中断服务子程序,当中断服务程序执行完毕后返回被中断的程序继续执行的过程。
《微机原理及应用》教材课后习题及答案(5篇范例)
《微机原理及应用》教材课后习题及答案(5篇范例)第一篇:《微机原理及应用》教材课后习题及答案《微机原理及应用》习题答案第一章ν1.11 请完成下列数制转换:(1)将174.66D转换为对应的二进制和十六进制形式。
(2)将100011101011.01011B转换为对应的十进制和十六进制形式。
(3)将F18A6.6H转换为对应的二进制和十进制形式。
答:174.66D=10101110.1010B=AE.AH100011101011.01011B=2283.34375D=8EB.58HF18A6.6H=989350.375Dν1.12 请写出与数据+37和-37对应的8位机器数原码、反码和补码,并分别用二进制和十六进制表示出来。
答:-37D=(10100101B)原=(11011010B)反=(11011011B)补ν1.13 8位机器数46H,若作为无符号数和补码有符号数,其对应的真值各是什么?若作为BCD码和ASCII码,其对应的又是什么?答:无符号数46H=70,补码46H=+70BCD码46H=46,ASCII码46H=“F”第二章λ2.5什么是8088中的逻辑地址和物理地址?逻辑地址如何转换成物理地址?1MB最多能分成多少个逻辑段?请将如下逻辑地址用物理地址表达:(1) FFFFH:0H (2) 40H:17H (3) 2000H:4500H(4) B821H:4567H 答:⑴ FFFFH:0H = FFFF0H⑵ 40H:17H = 00417H⑶ 2000H:4500H = 24500H⑷ B821H:4567H = BC777H λ2.8已知DS=2000H,BX=0100H,SI=0002,存储单元[20100H]~[20103H]依次存放12H,34H,56H,78H,[21200H]~[21203H]依次存放2AH,4CH,87H,65H,说明下列每条指令执行完后AX寄存器的内容以及源操作数的寻址方式?答:⑴ AX=1200H,立即数寻址;⑵ AX=0100H,寄存器寻址;⑶ AX=4C2AH,直接寻址;⑷ AX=3412H,寄存器间接寻址;⑸ AX=4C2AH,寄存器相对寻址;⑹ AX=7865H,基址变址寻址;⑺ AX=65B7H,基址变址相对寻址。
- 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
- 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
- 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。
微型计算机原理及应用课后答案侯晓霞文档编制序号:[KKIDT-LLE0828-LLETD298-POI08]CH01微型计算机概述习题与思考题1.微型计算机由哪些部件组成各部件的主要功能是什么解答:2.8086/8088 CPU由哪两部分组成它们的主要功能各是什么是如何协调工作的解答:协调工作过程:总线接口部件和执行部件并不是同步工作的,它们按以下流水线技术原则来协调管理:①每当8086的指令队列中有两个空字节,或者8088的指令队列中有一个空字节时,总线接口部件就会自动把指令取到指令队列中。
②每当执行部件准备执行一条指令时,它会从总线接口部件的指令队列前部取出指令的代码,然后用几个时钟周期去执行指令。
在执行指令的过程中,如果必须访问存储器或者输入/输出设备,那么,执行部件就会请求总线接口部件进入总线周期,完成访问内存或者输入/输出端口的操作;如果此时总线接口部件正好处于空闲状态,那么,会立即响应执行部件的总线请求。
但有时会遇到这样的情况,执行部件请求总线接口部件访问总线时,总线接口部件正在将某个指令字节取到指令队列中,此时总线接口部件将首先完成这个取指令的操作,然后再去响应执行部件发出的访问总线的请求。
③当指令队列已满,而且执行部件又没有总线访问请求时,总线接口部件便进入空闲状态。
④在执行转移指令、调用指令和返回指令时,由于程序执行的顺序发生了改变,不再是顺序执行下面一条指令,这时,指令队列中已经按顺序装入的字节就没用了。
遇到这种情况,指令队列中的原有内容将被自动消除,总线接口部件会按转移位置往指令队列装入另一个程序段中的指令。
3.8086/8088 CPU中有哪些寄存器各有什么用途标志寄存器F有哪些标志位各在什么情况下置位解答:标志寄存器F的标志位:①控制标志:OF、DF、IF、TF;②状态标志:SF、ZF、AF、PF、CF。
标志寄存器F的各标志位置位情况:· CF:进位标志位。
做加法时出现进位或做减法时出现借位,该标志位置1;否则清0。
·PF:奇偶标志位。
当结果的低8位中l的个数为偶数时,该标志位置1;否则清0。
·AF:半进位标志位。
在加法时,当位3需向位4进位,或在减法时位3需向位4借位时,该标志位就置1;否则清0。
该标志位通常用于对BCD算术运算结果的调整。
·ZF:零标志位。
运算结果各位都为0时,该标志位置1,否则清0。
·SF:符号标志位。
当运算结果的最高位为1时,该标志位置1,否则清0。
·TF:陷阱标志位(单步标志位)。
当该位置1时,将使8086/8088进入单步指令工作方式。
在每条指令开始执行以前,CPU总是先测试TF位是否为1,如果为1,则在本指令执行后将产生陷阱中断,从而执行陷阱中断处理程序。
该程序的首地址由内存的00004H~00007H 4个单元提供。
该标志通常用于程序的调试。
例如,在系统调试软件DEBUG中的T命令,就是利用它来进行程序的单步跟踪的。
·IF:中断允许标志位。
如果该位置1,则处理器可以响应可屏蔽中断,否则就不能响应可屏蔽中断。
·DF:方向标志位。
当该位置1时,串操作指令为自动减量指令,即从高地址到低地址处理字符串;否则串操作指令为自动增量指令。
·OF:溢出标志位。
在算术运算中,带符号的数的运算结果超出了8位或16位带符号数所能表达的范围时,即字节运算大于十127或小于-128时,字运算大于十32767或小于-32768时,该标志位置位。
4.8086/8088系统中存储器的逻辑地址和物理地址之间有什么关系表示的范围各为多少解答:逻辑地址:段地址:偏移地址物理地址:也称为绝对地址,由段基址和偏移量两部分构成。
物理地址与系统中的存储空间是一一对应的。
逻辑地址与物理地址两者之间的关系为:物理地址=段地址×16+偏移地址每个逻辑段的地址范围:0000:0000H~FFFFH;0001:0000H~FFFFH;…;FFFF:0000H~FFFFH;共有232个地址,但其中有许多地址是重叠的(体现出逻辑地址的优势,可根据需要方便地写出逻辑地址,又不影响其准确的物理地址,逻辑地址与物理地址的关系为多对一的关系)。
物理地址的地址范围:00000H ~FFFFFH 。
5.已知当前数据段位于存储器的A1000H 到B0FFFH 范围内,问DS= 解答:A1000H →A100:0000 以A100H 为段地址的64K 物理地址的范围是:偏移地址为0000H ~FFFFH ,即A100:0000H ~A100:FFFFH →A1000H +0000H ~A1000H +0FFFFH =A1000H ~B0FFFH ,∴DS =A100H 。
6.某程序数据段中存有两个字数据1234H 和5A6BH ,若已知DS=5AA0H ,它们的偏移地址分别为245AH 和3245H ,试画出它们在存储器中的存放情况 解答:存放情况如图所示(左右两侧的写法均可):7.8086/8088CPU 有哪两种工作模式,它们各有什么特点解答:为了适应各种不同的应用场合,8086/8088CPU 芯片可工作在两种不同的工作模式下,即最小模式与最大模式。
所谓最小模式,就是系统中只有一个8086/8088微处理器,在这种情况下,所有的总线控制信号,都是直接由这片8086/8088CPU 产生的,系统中的总线控制逻辑电路被减到最少。
该模式适用于规模较小的微机应用系统。
最大模式是相对于最小模式而言的,最大模式用在中、大规模的微机应用系统中。
在最大模式下,系统中至少包含两个微处理器,其中一个为主处理器,即8086/8088CPU ,其它的微处理器称之为协处理器,它们是协助主处理器工作的。
8.若8086CPU 工作于最小模式,试指出当CPU 完成将AH 的内容送到物理地址为91001H的存储单元操作时,以下哪些信号应为低电平:M/IO 、RD 、WR 、BHE /S7、DT/R 。
若CPU 完成的是将物理地址91000H 单元的内容送到AL 中,则上述哪些信号应为低电平。
若CPU 为8088呢(略)9.什么是指令周期什么是总线周期什么是时钟周期它们之间的关系如何解答:指令周期----CPU 执行一条指令所需要的时间称为一个指令周期(Instruction Cycle)。
总线周期----每当CPU 要从存储器或I/O 端口存取一个字节称为一次总线操作,相应于某个总线操作的时间即为一个总线周期(BUS Cycle)。
时钟周期----时钟周期是CPU 处理动作的最小时间单位,其值等于系统时钟频率的倒数,时钟周期又称为T 状态。
它们之间的关系:若干个总线周期构成一个指令周期,一个基本的总线周期由4个T 组成,我们分别称为T 1~T 4,在每个T 状态下,CPU 完成不同的动作。
10. 8086/8088 CPU 有哪些基本操作基本的读/写总线周期各包含多少个时钟周期什么情况下需要插入Tw 周期应插入多少个Tw 取决于什么因素解答:①8086/8088CPU 最小模式下的典型时序有:存储器读写;输入输出;中断响应;系统复位及总线占用操作。
②一个基本的CPU 总线周期一般包含四个状态4321T T T T 、、、,即四个时钟周期;③在存储器和外设速度较慢时,要在3T 之后插入1个或几个等待状态w T ; ④应插入多少个w T 取决于READY 信号的状态,CPU 没有在3T 状态的一开始采样到READY 信号为低电平,就会在3T 和4T 之间插入等待状态w T ,直到采样到READY 信号为高电平。
11. 试说明8086/8088工作在最大和最小模式下系统基本配置的差异。
8086/8088微机系统中为什么一定要有地址锁存器需要锁存哪些信息(略,见书) 12.试简述8086/8088微机系统最小模式下从存器储读数据时的时序过程。
(略,见书)CH02 8086/8088指令系统习题与思考题1.假定DS=2000H ,ES=2100H ,SS=1500H ,SI=00A0H ,BX=0100H ,BP=0010H ,数据变量VAL 的偏移地址为0050H ,请指出下列指令源操作数是什么寻址方式源操作数在哪里如在存储器中请写出其物理地址是多少 (1)MOV AX ,0ABH (2)MOV AX ,[100H] (3)MOV AX ,VAL (4)MOV BX ,[SI] (5)MOV AL ,VAL[BX] (6)MOV CL ,[BX][SI] (7)MOV VAL[SI],BX (8)MOV [BP][SI],100解答:(1)MOV AX ,0ABH寻址方式:立即寻址;物理地址:无(2)MOV AX ,[100H]寻址方式:直接寻址;源操作数在存储器中;物理地址:DS *16+100H =2000H*16+100H =20100H(3)MOV AX ,VAL寻址方式:直接寻址;源操作数在存储器中;物理地址:DS *16+VAL =2000H*16+0050H =20050H(4)MOV BX ,[SI]寻址方式:寄存器间接寻址;源操作数在存储器中;物理地址:DS *16+SI =2000H*16+00A0H =200A0H(5)MOV AL ,VAL[BX]寻址方式:变址寻址;源操作数在存储器中;物理地址:DS *16+VAL+BX =2000H*16+0050H+0100=20150H(6)MOV CL ,[BX][SI]寻址方式:基址加变址寻址;源操作数在存储器中;物理地址:DS *16+BX+SI=2000H*16+0100H+00A0H=201A0H (7)MOV VAL[SI],BX寻址方式:寄存器寻址;源操作数在寄存器中;物理地址:无(8)MOV [BP][SI],100寻址方式:立即寻址;物理地址:无2.设有关寄存器及存储单元的内容如下:DS=2000H,BX=0100H,AX=1200H,SI=0002H,[20100H]=12H,[20101H]=34H,[20102H]=56H,[20103]=78H,[21200]=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]解答:3数。
对3、6,写出相应标志位的状态)。
(1)ADD VALUE,BX (2)AND BX,VALUE(3)CMP BX,VALUE (4)XOR BX,0FFH(5)DEC BX (6)TEST BX,01H解答:4再执行一条POP指令,试画出堆栈区和SP内容变化的过程示意图。