习题1
1. 什么是汇编语言,汇编程序,和机器语言?
答:机器语言是用二进制代码表示的计算机能直接识别和执行的一种机器指令的集合。
汇编语言是面向及其的程序设计语言。在汇编语言中,用助记符代替操作码,用地址符号或标号代替地址码。这种用符号代替机器语言的二进制码,就把机器语言编程了汇编语言。
使用汇编语言编写的程序,机器不能直接识别,要由一种程序将汇编语言翻译成机器语言,这种起翻译作用的程序叫汇编程序。
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)16
8. 将下列二进制数转换成十进制数。 ① (1011.011)2=(11.6)10 ② (1101.01011)2=(13.58)10 ③ (111.001)2=(7.2)10
9. 将下列十进制数转换成8421BCD码。 ① 2006=(0010 0000 0000 0110)BCD
② 123.456=(0001 0010 0011.0100 0101 0110)BCD
10. 求下列带符号十进制数的8位基2码补码。 ① [+127]补= 01111111
② [-1]补= 11111111 ③ [-128]补= 10000000 ④[+1]补=
11. 求下列带符号十进制数的16位基2码补码。 ① [+655]补= 01111 ② [-1]补=1111111111111110 ③ [-3212]补=11110 ④ [+100]补=00100
习题 2
1. 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=0
6. 什么是存储器的物理地址和逻辑地址?在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个双字节的数据
FFFF:0001 FFFF1H 00A2:3TF 00D9FH B800:173F B973FH