微机原理与接口技术(第二版)课后习题答案完整版
《微机原理与接口技术(第二版)》课后答案马维华版
公式( 2 - 1) : 性能=核心频率×每个周期执行指令的条数 说明,微处理器的性能的提高不仅取决于工作频率,还依赖每周期执行指令的条数。新的处理器 代替老的处理器,就是根据这一性能公式来提高它的性能的。即或单独提高频率,或单独增加每周期 执行指令的条数,或既提高频率又增加每周期执行指令的条数。由于核心频率的提高是有限制的,因 此从 Cure 系列开始注重提高每个周期指令执行的条数来提高性能。 2-2 简述微处理器的工作方式、各工作方式的含义和区别是什么 ?它们之间是如何切换的? 答: 1.五种工作方式:实地址方式、保护虚地址方式、虚拟 86 方式、系统管理方式以及 IA-32E 方式。 2.含义: (1) 实地址方式是指处理器工作在 8086/8088 编程环境下的工作方式。 (2) 保护地址方式, 又称保护虚地址方式, 简称保护方式 , 是真正发挥处理器潜能的一种工作方式。 所谓保护是指在执行多任务操作时,对不同任务使用的不同存储空间进行完全隔离,保护每个任务顺 利执行。 (3) 虚拟 86 方式是指一个多任务的环境,即模拟多个 8086 的工作方式。在这个方式之下,处理器 被模拟成多个 8086 微处理器同时工作。 (4) 系统管理方式( SMM )是为实现特定功能及系统安全提供的一种工作方式,SMM 的功能主要 包括电源管理以及为操作系统和正在运行的程序提供安全性。 SMM 最显著的应用就是电源管理。 以上四种方式是 IA-32 所有处理器所具有的工作方式。 (5) 从后期的 P4 到以 Core 为核心的处理器开始支持 64 位扩展技术, 引入了 IA-32E 工作方式。 在 这种方式下,处理器支持两种模式即兼容的工作方式(兼容 IA-32 处理器的方式)和 64 位工 作方式。 在兼容模式下,允许在 64 位操作系统下运行原来的 16 位和 32 位应用程序,采用 EM64T 技术,支持 64 位操作,同时支持 36 位的地址,支持 64 位线性地址,默认的地址空间为 64 位,默认的数据宽度 为 32 位,指令允许 32/64 地址和 32/64 数据的混合使用,因此又把 Core 为核心的处理器称为 32/64 处理器,与真正 64 位处理器有区别,可称之为具有 64 位功能的 32 位处理器。
微机原理与接口技术课后答案第二版
微机原理与接口技术课后答案第二版【篇一:《微机原理与接口技术》(第二版)龚尚福-习题解析和实验指导】xt>2.2 8086微处理器由哪几部分组成?各部分的功能是什么?16355【解】:按功能可分为两部分:总线接口单元biu(bus interface unit)和执行单元eu(execution unit)。
总线接口单元biu是8086 cpu在存储器和i/o设备之间的接口部件,负责对全部引脚的操作,即8086对存储器和i/o设备的所有操作都是由biu完成的。
所有对外部总线的操作都必须有正确的地址和适当的控制信号,biu中的各部件主要是围绕这个目标设计的。
它提供了16位双向数据总线、20位地址总线和若干条控制总线。
其具体任务是:负责从内存单元中预取指令,并将它们送到指令队列缓冲器暂存。
cpu执行指令时,总线接口单元要配合执行单元,从指定的内存单元或i/o端口中取出数据传送给执行单元,或者把执行单元的处理结果传送到指定的内存单元或i/o端口中。
执行单元eu中包含1个16位的运算器alu、8个16位的寄存器、1个16位标志寄存器fr、1个运算暂存器和执行单元的控制电路。
这个单元进行所有指令的解释和执行,同时管理上述有关的寄存器。
eu对指令的执行是从取指令操作码开始的,它从总线接口单元的指令队列缓冲器中每次取一个字节。
如果指令队列缓冲器中是空的,那么eu就要等待biu通过外部总线从存储器中取得指令并送到eu,通过译码电路分析,发出相应控制命令,控制alu数据总线中数据的流向。
2.3 简述8086 cpu的寄存器组织。
【解】:(1)通用寄存器:通用寄存器又称数据寄存器,既可作为16位数据寄存器使用,也可作为两个8位数据寄存器使用。
当用作16位时,称为ax、bx、cx、dx。
当用作8位时,ah、bh、ch、dh 存放高字节,al、bl、cl、dl存放低字节,并且可独立寻址。
这样,4个16位寄存器就可当作8个8位寄存器来使用。
微机原理与接口技术第二版课后习题答案龚尚福版
微机原理与接口技术第二版课后习题答案龚尚福版文档编制序号:[KKIDT-LLE0828-LLETD298-POI08]微机原理与接口技术部分答案第二版主编:龚尚福8086微处理器由哪几部分组成各部分的功能是什么16355【解】:按功能可分为两部分:总线接口单元BIU(Bus Interface Unit)和执行单元EU (Execution Unit)。
总线接口单元BIU是8086 CPU在存储器和I/O设备之间的接口部件,负责对全部引脚的操作,即8086对存储器和I/O设备的所有操作都是由BIU完成的。
所有对外部总线的操作都必须有正确的地址和适当的控制信号,BIU中的各部件主要是围绕这个目标设计的。
它提供了16位双向数据总线、20位地址总线和若干条控制总线。
其具体任务是:负责从内存单元中预取指令,并将它们送到指令队列缓冲器暂存。
CPU执行指令时,总线接口单元要配合执行单元,从指定的内存单元或I/O端口中取出数据传送给执行单元,或者把执行单元的处理结果传送到指定的内存单元或I/O端口中。
执行单元EU中包含1个16位的运算器ALU、8个16位的寄存器、1个16位标志寄存器FR、1个运算暂存器和执行单元的控制电路。
这个单元进行所有指令的解释和执行,同时管理上述有关的寄存器。
EU对指令的执行是从取指令操作码开始的,它从总线接口单元的指令队列缓冲器中每次取一个字节。
如果指令队列缓冲器中是空的,那么EU就要等待BIU通过外部总线从存储器中取得指令并送到EU,通过译码电路分析,发出相应控制命令,控制ALU数据总线中数据的流向。
简述8086 CPU的寄存器组织。
【解】:(1)通用寄存器:通用寄存器又称数据寄存器,既可作为16位数据寄存器使用,也可作为两个8位数据寄存器使用。
当用作16位时,称为AX、BX、CX、DX。
当用作8位时,AH、BH、CH、DH存放高字节,AL、BL、CL、DL存放低字节,并且可独立寻址。
微型计算机原理与接口技术(第二版)习题参考解答
mov al , ah
adc al , bl
mov result , cx
adc al , bh
daa
mov ax , [x1+1]
daa
mov cl , al
mov bx , [x2+1]
mov ch , al
mov al , ah 【解】(6)
adc al , bl
mov [result+1] , cx
; 基址变址相对寻址
寄存器寻址
(9) in al , 05
; 寄存器寻址
立即数
(10) mov ds , ax
; 寄存器寻址
寄存器寻址
2. 已知:DS=1000H,BX=0200H,SI=02H,内存 10200H~10205H 单元的内容分别为 10H,2AH,3CH,46H,59H,6BH。
下列每条指令执行完后 AX 寄存器内容各为什么?
(1) MOV AX , 0200
; 执行后,AX=0200H
(2) MOV AX , [200H]
; 执行后,AX=2A10H
(3) MOV AX , BX
; 执行后,AX=0200H
(4) MOV AX , 3[BX]
; 执行后,AX=5946H
(5) MOV AX , [BX+SI]
; 执行后,AX=463CH
题 5. 假设程序中的数据定义如下:
par
dw ?
pname db 16 dup(?)
count dd ?
plenth dw $-par 求 plenth 的值为多少?表示什么意义?
(1) mov ax , [100h]
; 直接寻址,
《汇编语言微机原理及接口技术》(第2版)课后习题答案
第1章进制及码元1•进制转换129= 81H= 10000001B=201Q 298= 12AH= 100101010B=452Q 1000= 3E8H= 1111101000B= 1750Q 5DH= 1011101 B= 1350= 93 D 3E8H=1111101000 B= 17500= 1000 D3570=11101111 B= 0EF H= 239 D 3. 数据表示范围:一字节的无符号数表示范围为 0〜255,有符号数(补码)表示范围为-128 —+127。
一个字的无 符号数表示范围为 0〜65535,有符号数(补码)表示范围为—32768〜+32767。
N 位二进制数 的无符号数表示范围为 0〜(2N-1),有符号数(补码)表示范围为-2N -1〜(2曲-1).4.35H 代表的ASCII字符为M :,代表十六进制数时等价的十进制值为53_,代表压缩8421BCD 码等价的十进制值为 35_,代表非压缩8421BCD 码等价的十进制值为 5。
5. FFH 代表无符号数时等价的十进制值为一 1 ,代表反码有符号数时等价的十进制值为第2章微机硬件基础1 .计算机系统硬件的五大功能部件及其主要功能?答:硬件系统按功能模块分为运算器、控制器、存储器、输入设备、输出设备。
运算器主要完成算术运算、逻辑运算及移位运算,其中主要包括算术逻辑运算单元Arithmetic Logic Unit , ALU)和暂存数据(原始、中间、结果)的寄存器(Register , R)。
控制器实现对计算机部件的协调调度完成指令的分析执行,其中主要有程序计数器Program Counter , PC)或叫指令指针(Instruction Pointer , IP)、指令寄存器(Instruction register , IR)、指令译码器(Instruction Decoder , ID)、微操作命令发生器、时序发生器等。
微机原理与接口技术完整版答案(第二版)
课后答案:2.1 将下列十进制数分别转换为二进制数、八进制数、十六进制数。
128D=10000000B=200O=80H1024D=10000000000B=2000O=400H0.47D=0.01111000B=0.36O=0.78H625D=1001110001B=1161O=271H67.544D=1000011.1000B=103.4264O=43.8BH2.2 将下列二进制数转换成十进制数。
10110.001B=22.125D11000.0101B =24.3125D2.3 将下列二进制数分别转换为八进制数、十六进制数。
1100010B=142O=62H101110.1001B=56.44O=2E.9H0.1011101B=0.564O=0.BAH2.4 写出下列用补码表示的二进制数的真值。
01110011 —→ 01110011 —→ +11500011101 —→ 00011101 —→ +2910010101 —→ 11101011 —→-10711111110 —→ 10000010 —→-210000001 —→ 11111111 —→-1272.6 写出下列十进制数的BCD码表示形式。
456=(0100 0101 0110)BCD789=(0111 1000 1001)BCD123=(0001 0010 0011)BCD3.1 8086CPU由几部分组成?它们的主要功能是什么?答:从功能上讲,8086分为两部分,即总线接口部件BIU(Bus Interface Unit)和执行部件EU(Execution Unit)。
BIU是CPU与外部存储器及I/O的接口,负责与存储器和I/0系统进行数据交换。
指令执行部件EU完成指令译码和执行指令的工作。
3.2 8086有多少根地址线?可直接寻址多大容量的内存空间?答:8086CPU有16根数据线和20根地址线,直接寻址空间为220,即为1M字节。
《微机原理及接口技术》(第2版)―习题解答
《微机原理及接口技术》(第2版)―习题解答《16/32位微机原理、汇编语言及接口技术・第2版》习题解答1第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设备进行信息交换?好处:组态灵活、扩展方便?三组信号线:数据总线、地址总线和控制总线?其使用特点是:在某一时刻,只能由一个总线主控设备来控制系统总线,只能有一个发送者向总线发送信号;但可以有多个设备从总线上同时获得信号。
2〔习题1.5〕简述微型计算机的两个主要应用方向及其应用特点。
〔解答〕?用于数值计算、数据处理及信息管理方向?采用通用微机,要求有较快的工作速度、较高的运算精度、较大的内存容量和较完备的输入输出设备,为用户提供方便友好的操作界面和简便快捷的维护、扩充手段。
?用于过程控制及嵌人应用方向?采用控制类微机,要求能抵抗各种干扰、适应现场的恶劣环境、确保长时间稳定地工作,要求其实时性要好、强调其体积要小、便携式应用强调其省电。
微机原理与接口技术(第二版)课后习题答案完整版
微机原理与接口技术(第二版)课后习题答案完整版标准化文件发布号:(9312-EUATWW-MWUB-WUNN-INNUL-DQQTY-习题11.什么是汇编语言,汇编程序,和机器语言答:机器语言是用二进制代码表示的计算机能直接识别和执行的一种机器指令的集合。
汇编语言是面向及其的程序设计语言。
在汇编语言中,用助记符代替操作码,用地址符号或标号代替地址码。
这种用符号代替机器语言的二进制码,就把机器语言编程了汇编语言。
使用汇编语言编写的程序,机器不能直接识别,要由一种程序将汇编语言翻译成机器语言,这种起翻译作用的程序叫汇编程序。
2.微型计算机系统有哪些特点具有这些特点的根本原因是什么答:微型计算机的特点:功能强,可靠性高,价格低廉,适应性强、系统设计灵活,周期短、见效快,体积小、重量轻、耗电省,维护方便。
这些特点是由于微型计算机广泛采用了集成度相当高的器件和部件,建立在微细加工工艺基础之上。
3.微型计算机系统由哪些功能部件组成试说明“存储程序控制”的概念。
答:微型计算机系统的硬件主要由运算器、控制器、存储器、输入设备和输出设备组成。
“存储程序控制”的概念可简要地概括为以下几点:①计算机(指硬件)应由运算器、存储器、控制器和输入/输出设备五大基本部件组成。
②在计算机内部采用二进制来表示程序和数据。
③将编好的程序和原始数据事先存入存储器中,然后再启动计算机工作,使计算机在不需要人工干预的情况下,自动、高速的从存储器中取出指令加以执行,这就是存储程序的基本含义。
④五大部件以运算器为中心进行组织。
4.请说明微型计算机系统的工作过程。
答:微型计算机的基本工作过程是执行程序的过程,也就是CPU自动从程序存放的第1个存储单元起,逐步取出指令、分析指令,并根据指令规定的操作类型和操作对象,执行指令规定的相关操作。
如此重复,周而复始,直至执行完程序的所有指令,从而实现程序的基本功能。
5.试说明微处理器字长的意义。
答:微型机的字长是指由微处理器内部一次可以并行处理二进制代码的位数。
微机原理,汇编语言及接口技术第2版课后习题答案
第1章作业答案1.1 微处理器、微型计算机和微型计算机系统三者之间有什么不同?把CPU(运算器和控制器)用大规模集成电路技术做在一个芯片上,即为微处理器。
微处理器加上一定数量的存储器和外部设备(或外部设备的接口)构成了微型计算机。
微型计算机与管理、维护计算机硬件以及支持应用的软件相结合就形成了微型计算机系统。
1.2 CPU在内部结构上由哪几部分组成?CPU应该具备哪些主要功能?CPU主要由起运算器作用的算术逻辑单元、起控制器作用的指令寄存器、指令译码器、可编程逻辑阵列和标志寄存器等一些寄存器组成。
其主要功能是进行算术和逻辑运算以及控制计算机按照程序的规定自动运行。
1.3微型计算机采用总线结构有什么优点?采用总线结构,扩大了数据传送的灵活性、减少了连线。
而且总线可以标准化,易于兼容和工业化生产。
1.4数据总线和地址总线在结构上有什么不同之处?如果一个系统的数据和地址合用一套总线或者合用部分总线,那么要靠什么来区分地址和数据?数据总线是双向的(数据既可以读也可以写),而地址总线是单向的。
8086CPU为了减少芯片的引脚数量,采用数据与地址线复用,既作数据总线也作为地址总线。
它们主要靠信号的时序来区分。
通常在读写数据时,总是先输出地址(指定要读或写数据的单元),过一段时间再读或写数据。
第2章作业答案2.1 IA-32结构微处理器直至Pentillm4,有哪几种?80386、30486、Pentium、Pentium Pro、PeruiumII、PentiumIII、Pentium4。
2.6IA-32结构微处理器有哪几种操作模式?IA一32结构支持3种操作模式:保护模式、实地址模式和系统管理模式。
操作模式确定哪些指令和结构特性是可以访问的。
2.8IA-32结构微处理器的地址空间如何形成?由段寄存器确定的段基地址与各种寻址方式确定的有效地址相加形成了线性地址。
若末启用分页机制,线性地址即为物理地址;若启用分页机制,则它把线性地址转为物理地址。
微机原理与接口技术(第二版)课后习的题目问题解释完整版
习题11.什么是汇编语言,汇编程序,和机器语言?答:机器语言是用二进制代码表示的计算机能直接识别和执行的一种机器指令的集合。
汇编语言是面向及其的程序设计语言。
在汇编语言中,用助记符代替操作码,用地址符号或标号代替地址码。
这种用符号代替机器语言的二进制码,就把机器语言编程了汇编语言。
使用汇编语言编写的程序,机器不能直接识别,要由一种程序将汇编语言翻译成机器语言,这种起翻译作用的程序叫汇编程序。
2.微型计算机系统有哪些特点?具有这些特点的根本原因是什么?答:微型计算机的特点:功能强,可靠性高,价格低廉,适应性强、系统设计灵活,周期短、见效快,体积小、重量轻、耗电省,维护方便。
这些特点是由于微型计算机广泛采用了集成度相当高的器件和部件,建立在微细加工工艺基础之上。
3.微型计算机系统由哪些功能部件组成?试说明“存储程序控制”的概念。
答:微型计算机系统的硬件主要由运算器、控制器、存储器、输入设备和输出设备组成。
“存储程序控制”的概念可简要地概括为以下几点:①计算机(指硬件)应由运算器、存储器、控制器和输入/输出设备五大基本部件组成。
②在计算机部采用二进制来表示程序和数据。
③将编好的程序和原始数据事先存入存储器中,然后再启动计算机工作,使计算机在不需要人工干预的情况下,自动、高速的从存储器中取出指令加以执行,这就是存储程序的基本含义。
④五大部件以运算器为中心进行组织。
4.请说明微型计算机系统的工作过程。
答:微型计算机的基本工作过程是执行程序的过程,也就是CPU自动从程序存放的第1个存储单元起,逐步取出指令、分析指令,并根据指令规定的操作类型和操作对象,执行指令规定的相关操作。
如此重复,周而复始,直至执行完程序的所有指令,从而实现程序的基本功能。
5.试说明微处理器字长的意义。
答:微型机的字长是指由微处理器部一次可以并行处理二进制代码的位数。
它决定着计算机部寄存器、ALU和数据总线的位数,反映了一台计算机的计算精度,直接影响着机器的硬件规模和造价。
微机原理,汇编语言及接口技术第2版课后习题答案
第1章作业答案1.1 微处理器、微型计算机和微型计算机系统三者之间有什么不同?把CPU(运算器和控制器)用大规模集成电路技术做在一个芯片上,即为微处理器。
微处理器加上一定数量的存储器和外部设备(或外部设备的接口)构成了微型计算机。
微型计算机与管理、维护计算机硬件以及支持应用的软件相结合就形成了微型计算机系统。
1.2 CPU在内部结构上由哪几部分组成?CPU应该具备哪些主要功能?CPU主要由起运算器作用的算术逻辑单元、起控制器作用的指令寄存器、指令译码器、可编程逻辑阵列和标志寄存器等一些寄存器组成。
其主要功能是进行算术和逻辑运算以及控制计算机按照程序的规定自动运行。
1.3微型计算机采用总线结构有什么优点?采用总线结构,扩大了数据传送的灵活性、减少了连线。
而且总线可以标准化,易于兼容和工业化生产。
1.4数据总线和地址总线在结构上有什么不同之处?如果一个系统的数据和地址合用一套总线或者合用部分总线,那么要靠什么来区分地址和数据?数据总线是双向的(数据既可以读也可以写),而地址总线是单向的。
8086CPU为了减少芯片的引脚数量,采用数据与地址线复用,既作数据总线也作为地址总线。
它们主要靠信号的时序来区分。
通常在读写数据时,总是先输出地址(指定要读或写数据的单元),过一段时间再读或写数据。
第2章作业答案2.1 IA-32结构微处理器直至Pentillm4,有哪几种?80386、30486、Pentium、Pentium Pro、PeruiumII、PentiumIII、Pentium4。
2.6IA-32结构微处理器有哪几种操作模式?IA一32结构支持3种操作模式:保护模式、实地址模式和系统管理模式。
操作模式确定哪些指令和结构特性是可以访问的。
2.8IA-32结构微处理器的地址空间如何形成?由段寄存器确定的段基地址与各种寻址方式确定的有效地址相加形成了线性地址。
若末启用分页机制,线性地址即为物理地址;若启用分页机制,则它把线性地址转为物理地址。
微机原理与接口技术(第二版)课后习题答案完整版之欧阳美创编
习题12.什么是汇编语言,汇编程序,和机器语言?答:机器语言是用二进制代码表示的计算机能直接识别和执行的一种机器指令的集合。
汇编语言是面向及其的程序设计语言。
在汇编语言中,用助记符代替操作码,用地址符号或标号代替地址码。
这种用符号代替机器语言的二进制码,就把机器语言编程了汇编语言。
使用汇编语言编写的程序,机器不能直接识别,要由一种程序将汇编语言翻译成机器语言,这种起翻译作用的程序叫汇编程序。
3.微型计算机系统有哪些特点?具有这些特点的根本原因是什么?答:微型计算机的特点:功能强,可靠性高,价格低廉,适应性强、系统设计灵活,周期短、见效快,体积小、重量轻、耗电省,维护方便。
这些特点是由于微型计算机广泛采用了集成度相当高的器件和部件,建立在微细加工工艺基础之上。
4.微型计算机系统由哪些功能部件组成?试说明“存储程序控制”的概念。
答:微型计算机系统的硬件主要由运算器、控制器、存储器、输入设备和输出设备组成。
“存储程序控制”的概念可简要地概括为以下几点:①计算机(指硬件)应由运算器、存储器、控制器和输入/输出设备五大基本部件组成。
②在计算机内部采用二进制来表示程序和数据。
③将编好的程序和原始数据事先存入存储器中,然后再启动计算机工作,使计算机在不需要人工干预的情况下,自动、高速的从存储器中取出指令加以执行,这就是存储程序的基本含义。
④五大部件以运算器为中心进行组织。
5.请说明微型计算机系统的工作过程。
答:微型计算机的基本工作过程是执行程序的过程,也就是CPU自动从程序存放的第1个存储单元起,逐步取出指令、分析指令,并根据指令规定的操作类型和操作对象,执行指令规定的相关操作。
如此重复,周而复始,直至执行完程序的所有指令,从而实现程序的基本功能。
6.试说明微处理器字长的意义。
答:微型机的字长是指由微处理器内部一次可以并行处理二进制代码的位数。
它决定着计算机内部寄存器、ALU和数据总线的位数,反映了一台计算机的计算精度,直接影响着机器的硬件规模和造价。
微机原理与接口技术第二版课后习题答案完整版
习题11.什么是汇编语言,汇编程序,和机器语言答:机器语言是用二进制代码表示的计算机能直接识别和执行的一种机器指令的集合;汇编语言是面向及其的程序设计语言;在汇编语言中,用助记符代替操作码,用地址符号或标号代替地址码;这种用符号代替机器语言的二进制码,就把机器语言编程了汇编语言;使用汇编语言编写的程序,机器不能直接识别,要由一种程序将汇编语言翻译成机器语言,这种起翻译作用的程序叫汇编程序;2.微型计算机系统有哪些特点具有这些特点的根本原因是什么答:微型计算机的特点:功能强,可靠性高,价格低廉,适应性强、系统设计灵活,周期短、见效快,体积小、重量轻、耗电省,维护方便;这些特点是由于微型计算机广泛采用了集成度相当高的器件和部件,建立在微细加工工艺基础之上;3.微型计算机系统由哪些功能部件组成试说明“存储程序控制”的概念;答:微型计算机系统的硬件主要由运算器、控制器、存储器、输入设备和输出设备组成;“存储程序控制”的概念可简要地概括为以下几点:①计算机指硬件应由运算器、存储器、控制器和输入/输出设备五大基本部件组成;②在计算机内部采用二进制来表示程序和数据;③将编好的程序和原始数据事先存入存储器中,然后再启动计算机工作,使计算机在不需要人工干预的情况下,自动、高速的从存储器中取出指令加以执行,这就是存储程序的基本含义;④五大部件以运算器为中心进行组织;4.请说明微型计算机系统的工作过程;答:微型计算机的基本工作过程是执行程序的过程,也就是CPU自动从程序存放的第1个存储单元起,逐步取出指令、分析指令,并根据指令规定的操作类型和操作对象,执行指令规定的相关操作;如此重复,周而复始,直至执行完程序的所有指令,从而实现程序的基本功能;5.试说明微处理器字长的意义;答:微型机的字长是指由微处理器内部一次可以并行处理二进制代码的位数;它决定着计算机内部寄存器、ALU和数据总线的位数,反映了一台计算机的计算精度,直接影响着机器的硬件规模和造价;计算机的字长越大,其性能越优越;在完成同样精度的运算时,字长较长的微处理器比字长较短的微处理器运算速度快;6.微机系统中采用的总线结构有几种类型各有什么特点答:微机主板常用总线有系统总线、I/O总线、ISA总线、IPCI总线、AGP总线、IEEE1394总线、USB总线等类型;7.将下列十进制数转换成二进制数、八进制数、十六进制数;① 4.7510=0100.112=4.68=4.C16② 2.2510=10.012=2.28=2.816③ 1.87510=1.1112=1.78=1.E168.将下列二进制数转换成十进制数;① 1011.0112=11.610② 1101.010112=13.5810③ 111.0012=7.2109.将下列十进制数转换成8421BCD码;① 2006=0010 0000 0000 0110BCD② 123.456=0001 0010 0011.0100 0101 0110BCD10.求下列带符号十进制数的8位基2码补码;① +127补= 01111111② -1= 11111111补③ -128= 10000000补= 00000001④+1补11.求下列带符号十进制数的16位基2码补码;① +655补= 0000001010001111② -1补=1111111111111110③ -3212补=1111011101011100④ +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, 100H3 MOV AX, V AL4 MOV BX, SI5 MOV AL, V ALBX6 MOV CL, BXSI7 MOV V ALSI, BX 8 MOV BPSI, 100答:1 立即数寻址,无物理地址2 直接寻址,物理地址=2000H×10H+100H=20100H3 直接寻址,物理地址=2000H×10H+0050H=20050H4 寄存器间接寻址,物理地址=2000H×10H+00A0=200A0H5 相对寄存器寻址,物理地址=2000H×10H+0050+0100H=20150H6 基址加变寻址,物理地址=2000H×10H+0100H+00A0H=201A0H7 寄存器寻址,无物理地址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, BX3 MOV BX, 1200H4 MOV DX, 1100BX5 MOV BXSI, AL6 MOV AX, 1100BXSI答:1 AX=1800H 2 AX=0100H 3 BX=4C2AH4 DX=4C2AH5 20102H=00H6 AX=65B7H4. 写出实现下列计算的指令序列;1 Z=W+X+Z2 Z=W-X+6-R+9答:1 MOV AX, ZADD AX, XADD AX, WMOV Z, AX2 MOV AX, WADD X, 6SUB AX, XADD R, 9SUB AX, RMOV Z, AX5. 若在数据段中从字节变量TABLE相应的单元开始存放了0~15的平方值,试写出包含XLAT指令的指令序列查找N0~15中的某个平方数;答:LEA BX, TABLEMOV AL, CLXLAT6. 写出实现下列计算的指令序列;1 Z=WX/R+62 Z=W-X/5Y2答:1 MOV AX, WIMUL XADD R, 6IDIV RMOV Z, AX2 MOV AX, WSUB AX, XMOV BL, 5IDIV BLCBWIMUL YMOV BX, 2IMUL BXMOV Z, AX7. 假定DX=1100100110111001B,CL=3,CF=1, 试确定下列各条指令单独执行后DX的值;1 SHR DX, 12 SHL DL, 13 SAL DH, 14 SAR DX, CL5 ROR DX, CL6 ROL DL, CL7 RCR DL, 18 RCL DX, CL答:1 DX=0110 0100 1101 1100B 2 DX=1100 1001 0111 0010B3 DX=1001 0010 1011 1001B4 DX= 1111 1001 0011 0111B5 DX= 0011 1001 0011 0111B 6DX= 0100 1101 1100 1110B7 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=0DEC AX AX=2340H,CF=1,SF=0,ZF=0MOV CX,4MULL CX AX=8D00H, CF=0,SF=1,ZF=0INT 20H结束后,DX=0000H, AX=8000H9.试分析下列程序段:ADD AX, BXJNC L2SUB AX, BXJNC L3JMP SHORTL5如果AX,BX的内容给定如下:AX BX1 14C6H 80DCH2 B568H 54B7H问该程序在上述情况下执行后,程序转向何处;答:1转到L2处2转到L3处习题41.下列语句在存储器中分别为变量分配多少字节空间并画出存储空间的分配图;V AR1 DB 10,2V AR2 DW 5 DUP ,0V AR3 DB ‘HOW ARE YOU ’,3 DUP1,2V AR4 DD -1,1,0答:字节空间:V AR1:2;V AR2:12;V AR3:13;V AR4:8;存储空间的分配图:2.假定V AR1 和V AR2 为字变量,LAB 为标号,试指出下列指令的错误之处; 1ADD V AR1,V AR2 2SUB AL,V AR13JMP LABCX 4JNZ V AR15 MOV 1000H,100 6SHL AL, 4答:1 在算术运算指令中,两个操作数不能同时为存储器寻址方式2 AL 为字节,V AR1 为字变量,字长不相等;3 错误1:寄存器相对寻址方式,只能使用基址或变址寄存器,不能使用CX寄存器;错误2:汇编格式错误,无法判段是段内转移还是段间转移;4 转向地址应为标号,不能是变量;5 目的操作数的类型不确定;6 SHL 指令中,当所移位数超过1 时,必须用CL取代所移位数;3.对于下面的符号定义,指出下列指令的错误;A1 DBA2 DB 10K1 EQU 10241 MOV K1,AX 2MOV A1,AX3CMP A1,A2 4K1 EQU 2048答:1K1 为常量,不能用MOV 指令赋值;2A1 为字节,AX 为字变量,类型不一致;3A1 和A2同为存储器寻址方式,不符合语法规则;4K1 重新赋值前,必须用PURGE 释放;4.数据定义语句如下所示:FIRST DB 90H,5FH,6EH,69HSECOND DB 5 DUPTHIRD DB 5 DUPFORTH DB 4 DUP自FIRST 单元开始存放的是一个四字节的十六进制数低位字节在前,要求:编一段程序将这个数左移两位后存放到自SECOND 开始的单元,右移两位后存放到自THIRD 开始的单元,求补后放到FORTH开始的单元;注意保留移出部分答:DA TA SEGMENTFIRST DB 90H,5FH,6EH,69HSECOND DB 5 DUPTHIRD DB 5 DUPFORTH DB 4 DUPDA TA ENDSCODE SEGMENTASSUME CS:CODE,DS:DATASTART:MOV AX,DATAMOV 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 位MOV WORD PTR DI ,AXMOV WORD PTR DI+2 ,DX;右移2 位LEA 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 位MOV WORD PTR DI+1 , AXMOV WORD PTR DI+3 ,DX;求补LEA 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 ;高位加低位加法时的进位MOV WORD 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 ptrBX,AHINC BXLOOP NEXT1MOV BX,0000HMOV CX,0C000HMOV AL,81HNEXT2: MOV AH, BXCMP 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 DUPORG 0A00HDA2 DB 128 DUPDATA ENDSCODE SEGMENTASSUME CS:CODE,DS:DATA,ES:DATASTART: MOV AX,DATAMOV DS,AXLEA SI,DA1LEA DI,DA2MOV CX,128AGAIN: MOV AL,SIINC SIINC DILOOP AGAINLEA SI, DA1LEA DI, DA2MOV CX,128NEXT: MOV AL,SIMOV BL,DICMP 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 DBB DBC DBDATA 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 DUPDA1 DBLENGTH DB 0DATA ENDSCODE SEGMENTASSUME CS:CODE,DS:DATASTART: MOV AX,DATAMOV DS,AXMOV SI,0MOV AL,DA1MOV CX,100FIND0: CMP BUFFSI,ALJZ EXITINC SILOOP FIND0MOV DI,99MOV SI,0COMPARE: CMP BUFFDI,ALJG INSERTMOV BL,BUFFDIMOV BUFFDI+1,BLDEC DICMP DI,SIJNL COMPAREJMP EXITINSERT: MOV BUFFDI+1,ALMOV LENGTH , 101 EXIT: 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 PTRSIMOV DL,BYTE PTRDIADC AL,DLDAAMOV BYTE PTRBX,ALINC SIINC DIINC BXLOOP AGAINJC AAMOV BYTE PTRBX,0JMP EXITAA: MOV BYTE PTRBX,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 $-MITABBUFF DB 10 DUP ,'$'YUANWEN DB 10 DUP ,'$'DATA ENDSCODE SEGMENTASSUME CS∶CODE,DS∶DATASTART:MOV AX,DATAMOV DS,AXMOV SI,0MOV CX,CONTINPUT: MOV AH,1INT 21HCMP AL,13JZ EXITAND AL,0FHMOV YUANWENSI ,ALINC SILOOP INPUTEXIT : LEA BX,MITABMOV CX,SIMOV SI,0JIAMI: MOV AL,YUANWENSIXLAT MITABMOV BUFFSI,ALINC SILOOP JIAMIMOV AH, 4CHINT 21HCODE ENDSEND START11.试编程序,统计由40000H开始的16K个单元中所存放的字符“A”的个数,并将结果存放在DX中;答:DATA SEGMENTDA1 DB 'A'BUFF DB 4000H DUPDATA ENDSCODE SEGMENTASSUME CS:CODE,DS:DATASTART: MOV AX,4000HMOV DS,AXMOV BX,0MOV CX,4000HFIND: MOV AL,BXMOV 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 DUPDA9 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 BUFFBX,90JB LP8JMP NEXTLP8: CMP BUFFBX,80JB LP7INC DA8JMP NEXTLP7: CMP BUFFBX,70JB LP6INC DA7JMP NEXTLP6: CMP BUFFBX,60JB LP5INC DA6JMP NEXTLP5: INC DA5JMP NEXT NEXT: INC BXLOOP COMPAREMOV CX,80XOR AX,AXMOV BX,00 SUM: ADD AX,BUFFBXINC 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, 256 LP: MOV AL, SICALL JIOUMOV SI, ALINC SILOOP LPMOV AH, 4CHINT 21HJIOU PROCPUSH CXPUSH BXXOR AH, AHPUSH AXMOV CL, 7 LOOP1: SAR AL, 1ADC AH, 0LOOP LOOP1MOV AL, AHXOR AH, AHMOV BL, 2DIV BLMOV BL, AHPOP AXROR BL, 1OR AL, BLPOP BXPOP CXRETJIOU ENDPCODE ENDSEND START习题51.试述DRAM的工作特点;与SRAM相比有什么长处和不足之处;说明它的使用场合;答:DRAM,动态随机存取存储器,需要不断的刷新,才能保存数据; 而且是行列地址复用的,许多都有页模式; SRAM,静态的随机存取存储器,加电情况下,不需要刷新,数据不会丢失,而且一般不是行列地址复用的;与SRAM相比,DRAM价格便宜、速度慢、容量大,主要用来做主存储器,存储程序和数据;而SRAM主要用在Cache等对速度要求高的情况;2.试述DRAM刷新过程和正常读/写过程的区别;答:刷新是以行为单位进行,且刷新过程中不能进行读写操作;3.设有一个具有20位地址和32位字长的存储器,问:(1)该存储器能存储多少个字节的信息(2)如果存储器由512K8位SRAM芯片组成,需要多少片(3)需要多少位作芯片选择答:1该存储器能存储4MB的信息;2 需要8片512K8位的芯片;3 需要1位做芯片选择;4.对于8K×8位RAM组成的存储器系统,若某组的起始地址为08000H,则其末地址为多少答:末地址为9FFF.5.在8088最大方式系统总线上扩充设计4K字节的SRAM存储器电路;SRAM芯片选用Intel 2114,起始地址从0000H;试画出此存储器电路与系统总线的连接图;答:系统容量为4K8bit,芯片容量为1K4bit,所以一共需要8片芯片连接图如下:6.在8088系统总线上扩充设计8K的字节的SRAM存储器电路;SRAM芯片选用Intel 6264,起始地址从04000H开始,译码器电路74LS138.(1)计算此RAM存储区的最高地址是多少;(2)画出此存储器电路与系统总线的连接图;答:1最高地址是05FFFH;27.在8086最小方式系统总线上扩充设计16K字节的SRAM存储器电路,SRAM芯片选用Intel 6264,起始地址从04000H开始,译码器电路采用74LS138. (1)计算此RAM存储区域的最高地址是多少(2)画出此存储器与总线的连接图;答:1 07FFFH2习题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,每一条请求线上有一个相应的触发器来保存请求信号,它们形成了中断请求寄存器IRRInterrupt Request Register;⑵中断屏蔽寄存器IMRIMRInterrupt Mask Register用来存放屏蔽位信息,IMR的每一位可以禁止IRR 中对应位的中断请求输入信号进入;⑶中断服务寄存器ISRISRInterrupt Service Register存放当前正在进行服务的所有中断;ISR中相应位的置位是在中断响应的INTA脉冲期间,由优先权判决电路根据IRR中各请求位的优先权级别和IMR中屏蔽位的状态,将中断的最高优先级请求位选通到ISR中;11.类型号为20H的中断服务程序入口符号地址为INT-5,试写出中断向量的装入程序片段;答:MOV AX, 0MOV DS, AXMOV SF, 20H4LEA AX, IMSMOV IS, AXMOV AX, SEQ, INTSMOV SI+2, AX12.简述DMA控制器同一般接口芯片的区别;答:DMA控制器能给出访问内存所需要的地址信息,并能自动修改地址指针,也能设定和修改传送的字节数,还能向存储器和外设发出相应的读/写控制信号;在DMA传送结束后,它能释放总线,把对总线的控制权又交还给CPU;用DMA方式传输数据时,不需要进行保护和恢复断点及现场之类的额外操作;13.简述8237A3种基本传送类型的特点;答:单次传送方式:每次DMA操作只传送1B,然后就自动把总线控制权交给CPU,若还有通道请求信号,则DMAC则再重新向CPU发出总线请求,获得控。
微机原理与接口技术完整版答案(第二版)
课后答案:2.1 将下列十进制数分别转换为二进制数、八进制数、十六进制数。
128D=10000000B=200O=80H1024D=10000000000B=2000O=400H0.47D=0.01111000B=0.36O=0.78H625D=1001110001B=1161O=271H67.544D=1000011.1000B=103.4264O=43.8BH2.2 将下列二进制数转换成十进制数。
10110.001B=22.125D11000.0101B =24.3125D2.3 将下列二进制数分别转换为八进制数、十六进制数。
1100010B=142O=62H101110.1001B=56.44O=2E.9H0.1011101B=0.564O=0.BAH2.4 写出下列用补码表示的二进制数的真值。
01110011 —→ 01110011 —→ +11500011101 —→ 00011101 —→ +2910010101 —→ 11101011 —→-10711111110 —→ 10000010 —→-210000001 —→ 11111111 —→-1272.6 写出下列十进制数的BCD码表示形式。
456=(0100 0101 0110)BCD789=(0111 1000 1001)BCD123=(0001 0010 0011)BCD3.1 8086CPU由几部分组成?它们的主要功能是什么?答:从功能上讲,8086分为两部分,即总线接口部件BIU(Bus Interface Unit)和执行部件EU(Execution Unit)。
BIU是CPU与外部存储器及I/O的接口,负责与存储器和I/0系统进行数据交换。
指令执行部件EU完成指令译码和执行指令的工作。
3.2 8086有多少根地址线?可直接寻址多大容量的内存空间?答:8086CPU有16根数据线和20根地址线,直接寻址空间为220,即为1M字节。
微机原理与接口技术(第二版)课后习题答案
微机原理与接口技术(第二版)课后习题答案第1章作业答案1.1 微处理器、微型计算机和微型计算机系统三者之间有什么不同?解:把CPU(运算器和控制器)用大规模集成电路技术做在一个芯片上,即为微处理器。
微处理器加上一定数量的存储器和外部设备(或外部设备的接口)构成了微型计算机。
微型计算机与管理、维护计算机硬件以及支持应用的软件相结合就形成了微型计算机系统。
1.2 CPU在内部结构上由哪几部分组成?CPU应该具备哪些主要功能? 解:CPU主要由起运算器作用的算术逻辑单元、起控制器作用的指令寄存器、指令译码器、可编程逻辑阵列和标志寄存器等一些寄存器组成。
其主要功能是进行算术和逻辑运算以及控制计算机按照程序的规定自动运行。
1.3 微型计算机采用总线结构有什么优点?解:采用总线结构,扩大了数据传送的灵活性、减少了连线。
而且总线可以标准化,易于兼容和工业化生产。
1.4 数据总线和地址总线在结构上有什么不同之处?如果一个系统的数据和地址合用一套总线或者合用部分总线,那么要靠什么来区分地址和数据?解:数据总线是双向的(数据既可以读也可以写),而地址总线是单向的。
8086CPU为了减少芯片的引脚数量,采用数据与地址线复用,既作数据总线也作为地址总线。
它们主要靠信号的时序来区分。
通常在读写数据时,总是先输出地址(指定要读或写数据的单元),过一段时间再读或写数据。
1.8在给定的模型中,写出用累加器的办法实现15×15的程序。
解: LD A, 0LD H, 15LOOP:ADD A, 15DEC HJP NZ, LOOPHALT第 2 章作业答案2.1 IA-32结构微处理器直至Pentillm4,有哪几种?解:80386、30486、Pentium、Pentium Pro、Peruium II 、PentiumIII、Pentium4。
2.6 IA-32结构微处理器有哪几种操作模式?解:IA一32结构支持3种操作模式:保护模式、实地址模式和系统管理模式。
微机原理与接口技术(第二版)课后习题答案完整版
习题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,然后就主动把总线掌握权交。
微机原理与接口技术(第二版)课后习题答案完整版
习题11.什么就是汇编语言,汇编程序,与机器语言?答:机器语言就是用二进制代码表示得计算机能直接识别与执行得一种机器指令得集合。
汇编语言就是面向及其得程序设计语言。
在汇编语言中,用助记符代替操作码,用地址符号或标号代替地址码。
这种用符号代替机器语言得二进制码,就把机器语言编程了汇编语言。
使用汇编语言编写得程序,机器不能直接识别,要由一种程序将汇编语言翻译成机器语言,这种起翻译作用得程序叫汇编程序。
2.微型计算机系统有哪些特点?具有这些特点得根本原因就是什么?答:微型计算机得特点:功能强,可靠性高,价格低廉,适应性强、系统设计灵活,周期短、见效快,体积小、重量轻、耗电省,维护方便。
这些特点就是由于微型计算机广泛采用了集成度相当高得器件与部件,建立在微细加工工艺基础之上。
3.微型计算机系统由哪些功能部件组成?试说明“存储程序控制”得概念。
答:微型计算机系统得硬件主要由运算器、控制器、存储器、输入设备与输出设备组成。
“存储程序控制”得概念可简要地概括为以下几点:①计算机(指硬件)应由运算器、存储器、控制器与输入/输出设备五大基本部件组成。
②在计算机内部采用二进制来表示程序与数据。
③将编好得程序与原始数据事先存入存储器中,然后再启动计算机工作,使计算机在不需要人工干预得情况下,自动、高速得从存储器中取出指令加以执行,这就就是存储程序得基本含义。
④五大部件以运算器为中心进行组织。
4.请说明微型计算机系统得工作过程。
答:微型计算机得基本工作过程就是执行程序得过程,也就就是CPU自动从程序存放得第1个存储单元起,逐步取出指令、分析指令,并根据指令规定得操作类型与操作对象,执行指令规定得相关操作。
如此重复,周而复始,直至执行完程序得所有指令,从而实现程序得基本功能。
5.试说明微处理器字长得意义。
答:微型机得字长就是指由微处理器内部一次可以并行处理二进制代码得位数。
它决定着计算机内部寄存器、ALU与数据总线得位数,反映了一台计算机得计算精度,直接影响着机器得硬件规模与造价。
- 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
- 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
- 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。
习题11.什么是汇编语言,汇编程序,和机器语言?答:机器语言是用二进制代码表示的计算机能直接识别和执行的一种机器指令的集合。
汇编语言是面向及其的程序设计语言。
在汇编语言中,用助记符代替操作码,用地址符号或标号代替地址码。
这种用符号代替机器语言的二进制码,就把机器语言编程了汇编语言。
使用汇编语言编写的程序,机器不能直接识别,要由一种程序将汇编语言翻译成机器语言,这种起翻译作用的程序叫汇编程序。
2.微型计算机系统有哪些特点?具有这些特点的根本原因是什么?答:微型计算机的特点:功能强,可靠性高,价格低廉,适应性强、系统设计灵活,周期短、见效快,体积小、重量轻、耗电省,维护方便。
这些特点是由于微型计算机广泛采用了集成度相当高的器件和部件,建立在微细加工工艺基础之上。
3.微型计算机系统由哪些功能部件组成?试说明“存储程序控制”的概念。
答:微型计算机系统的硬件主要由运算器、控制器、存储器、输入设备和输出设备组成。
“存储程序控制”的概念可简要地概括为以下几点:①计算机(指硬件)应由运算器、存储器、控制器和输入/输出设备五大基本部件组成。
②在计算机内部采用二进制来表示程序和数据。
③将编好的程序和原始数据事先存入存储器中,然后再启动计算机工作,使计算机在不需要人工干预的情况下,自动、高速的从存储器中取出指令加以执行,这就是存储程序的基本含义。
④五大部件以运算器为中心进行组织。
4.请说明微型计算机系统的工作过程。
答:微型计算机的基本工作过程是执行程序的过程,也就是CPU自动从程序存放的第1个存储单元起,逐步取出指令、分析指令,并根据指令规定的操作类型和操作对象,执行指令规定的相关操作。
如此重复,周而复始,直至执行完程序的所有指令,从而实现程序的基本功能。
5.试说明微处理器字长的意义。
答:微型机的字长是指由微处理器内部一次可以并行处理二进制代码的位数。
它决定着计算机内部寄存器、ALU和数据总线的位数,反映了一台计算机的计算精度,直接影响着机器的硬件规模和造价。
计算机的字长越大,其性能越优越。
在完成同样精度的运算时,字长较长的微处理器比字长较短的微处理器运算速度快。
6.微机系统中采用的总线结构有几种类型?各有什么特点?答:微机主板常用总线有系统总线、I/O总线、ISA总线、IPCI总线、AGP总线、IEEE1394总线、USB总线等类型。
7.将下列十进制数转换成二进制数、八进制数、十六进制数。
①(4.75)10=(0100.11)2=(4.6)8=(4.C)16②(2.25)10=(10.01)2=(2.2)8=(2.8)16③(1.875)10=(1.111)2=(1.7)8=(1.E)168.将下列二进制数转换成十进制数。
①(1011.011)2=(11.6)10②(1101.01011)2=(13.58)10③(111.001)2=(7.2)109.将下列十进制数转换成8421BCD码。
① 2006=(0010 0000 0000 0110)BCD② 123.456=(0001 0010 0011.0100 0101 0110)BCD10.求下列带符号十进制数的8位基2码补码。
① [+127]补= 01111111② [-1= 11111111]补= 10000000③ [-128]补④[+1]= 00000001补11.求下列带符号十进制数的16位基2码补码。
= 0000001010001111① [+655]补② [-1]=1111111111111110补=1111011101011100③ [-3212]补=0000000001100100④ [+100]补习题 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期间输出高电平。
④ADl5~AD:在T1期间,输出CPU要读取的存储单元或I/O端口的地址A15~A 0。
T2期间为高阻态,T3~T4期间,存储单元或I/O端口将数据送上数据总线。
CPU从ADl5~AD上接收数据。
⑤ALE:在T1期间地址锁存有效信号,为一正脉冲,系统中的地址锁存器正是利用该脉冲的下降沿来锁存A19/S6~A16/S3,ADl5~AD中的20位地址信息以及BHE。
⑥RD:T2期间输出低电平送到被选中的存储器或I/O接口,注意,只有被地址信号选中的存储单元或I/O端口,才会被RD信号从中读出数据(数据送上数据总线ADl5~AD)。
⑦DT/R:在整个总线周期内保持低电平,表示本总线周期为读周期,在接有数据总线收发器的系统中,用来控制数据传输方向。
⑧DEN:在T2~T3期间输出有效低电平,表示数据有效,在接有数据总线收发器的系统中,用来实现数据的选通。
总线写操作的时序与读操作时序相似,其不同处在于:①ADl5~AD:在T2~T4期间送上欲输出的的数据,而无高阻态。
②W R:从T2~T4,W R引脚输出有效低电平,该信号送到所有的存储器和I/O接口。
注意,只有被地址信号选中的存储单元或I/O端口才会被W R信号写入数据。
③DT/R:在整个总线周期内保持高电平,表示本总线周期为写周期,在接有数据总线收发器的系统中,用来控制数据传输方向。