第1章 微机基础知识.docx
《第1章 微机基础知识.docx》由会员分享,可在线阅读,更多相关《第1章 微机基础知识.docx(32页珍藏版)》请在冰豆网上搜索。
第1章微机基础知识
微机原理与应用
(PrincipleandApplicationofMicrocomputer)
第一章微机基础知识(foundation)
§1.1计算机的发展(development)
1.电子计算机发展
第一代:
1946~1957年,以电子管为主,每秒几千~几万次
第二代:
1958~1964年,以晶体管分立元件为主,每秒几十万次
第三代:
1965~1970年,以小规模(SSI)、中规模(MSI)集成电路为主
第四代:
1970以来,以大规模(LSI)、超大规模(VLSI)集成电路为主
第五代:
80年代中期开始,研制智能型、带知识库、有推理能力计算机
微型计算机的发展(70年代开始诞生了以微处理器为核心的微型计算机)
第一代:
1971~1973年,2000/片,4位和低档8位机,简单计算和小型控制
第二代:
1974~1977年,9000/片,8位机
第三代:
1978~1983年,10万/片,16位机(8086:
2.9万/片,80286:
10万/片)
第四代:
1983~1993年,几十万/片,32位机(80386:
27.5万/片,80486:
120万/片)
第五代:
1993年开始,64位机(80586:
300万,Pentium4:
4200万/片)
计算机的发展趋势是功能巨型化、体积微型化、网络化、智能化
2.微型计算机优点:
价格低、体积小、重量轻、功耗省、可靠性高等
§1.2数制和编码(numberrepresentationsystem&coding)
一.数制
一个数N可表示为
x基数,为常数a系数,各数位上的数字
m,n幂指数,为正整数
1.十进制:
0~9
129.87=1×102+2×101+9×100+8×10-1+7×10-2
2.二进制:
0~1
1011.101B=1×23+0×22+1×21+1×20+1×2-1+0×2-2+1×2-3
3.十六进制:
0~9,A,B,C,D,E,F
1ED.8AH=1×162+14×161+13×160+8×16-1+10×16-2
一位十六进制数等于四位二进制数,有:
161=24
二.数制间的转换
1.二~十转换
10→2整数部分“除以2取余”,小数部分“乘2取整”分开计算,如:
76.6875D=1001100.1011B
整数76D=1001100B小数0.6875D=0.1011B
除数
被除数
余数
0.6875
2
76
×
2
2
38
0
低位高位
1.3750
2
19
0
×
2
2
9
1
0.7500
2
4
1
×
2
2
2
0
1.5000
2
1
0
×
2
0
1
高位低位
1.0000
小数2→10可准确,10→2有时只能近似
2→10将二进制数按位展开累加即可。
2.二~十六转换
以小数点为界限算起,整数向左,小数向右,每四位二进制数对应一位十六进制数,
如:
11111011.00111101B=FB.3DH
同样,对二~八转换有:
1101110111.10001101B=1567.432Q
三.码制
计算机中常用原码、补码、反码来表示一个数,它们把数的符号也数值化了,通常是用二进制数的最高位表示(0正1负),这种数叫做机器数。
1.原码
最高位符号(0正1负),其余位数值,如:
X=+1011100,Y=-1011100
原码表示为:
[X]原=01011100,[Y]原=11011100
00000000和10000000都代表0(正0和负0)。
计算:
X+Y=1011100+(-1011100)=0
但是:
[X]原+[Y]原=01011100+11011100≠0
01011100
+11011100
100111000——出错
必须用补码运算才能得到正确结果。
2.补码
模:
计量器的最大容量。
4位寄存器能存放0000~1111共16个数,其模为24=16,n位二进制数其模为2n。
器件进行的运算是有模运算,例如8位的运算器,运算结果超出11111111(255),超出部分自动丢失(保存在进位标志寄存器中)。
1位十进制数能表示0~9,其模为101=10
时钟以12为模,圆角度以360度为模
例,时钟从7点拨到4点,可作减3也可作加9,即7-3=4,7+9=16=4+12(丢失)
+9即为-3对12的补码
角度从120度变到40度,可用120-80=40,也可用120+280=40+360(丢失)
+280即为-80的补码
将原码变成补码的方法是:
正数:
补码等于原码
负数:
补码等于其原码符号位不变,其余各位按位取反再加1,称“取反加1”。
(亦可用模减原码数值位而得补码)
例:
11011100原码
10100011(取反)
10100100(加1)补码
求补码的简便办法是,原码符号位不变从最低位开始,直到出现第一个1都不变,其余按位取反即可
1101110010100100
用补码运算的目的,是要把减法运算变为加法运算。
(符号位也参与运算)
上述原码[X]原=01011100,[Y]原=11011100,其补码
[X]补=01011100,[Y]补=10100100
现在来计算X+Y(用补码运算)
01011100
+10100100
100000000结果为0(注意,其结果还是补码)
(进位丢失)
另外:
补码的补码等于原码。
例
原码11011100,求其补码10100100,再求补11011100等于原码。
·[X+Y]补=[X]补+[Y]补
·[X-Y]补=[X]补+[-Y]补
3.反码
正数:
反码等于原码
负数:
反码等于其原码符号位不变,其余各位按位取反
反码的反码等于原码,例:
原码11010100,取反后为10101011,再取反11010100等于原码
对8位二进制数,范围为00000000~11111111
无符号时:
0~255,即00H~FFH(0~2n-1)
原码:
-127~+127,即FFH~7FH(-2n-1+1~2n-1-1)
(-127~-0,FFH~80H;0~127,00H~7FH)
补码:
-128~+127,即80H~7FH(-2n-1~2n-1-1)
(-128~-1,80H~FFH;0~127,00H~7FH)
反码:
-127~+127,即80H~7FH(-2n-1+1~2n-1-1)
(-127~-0,80H~FFH;0~127,00H~7FH)
四.编码
1.二进制码的十进制数(BCD码──BinaryCodedDecimal)
用四位二进制数来表示一位十进制数,十进制数之间仍保持十进关系。
常用的是8421BCD码(还有5421、2421、6311、余3码等),如:
(1001100001110110)BCD=9876D
大于1001的数为非法码,因此在BCD码运算中,出现:
①半进位(高低4位有进位)②非法码
必须进行十进制调整,即加法作加6调整,减法作减6调整。
如:
48+79=127
01001000
+01111001
11000001──出错(有半进位,高位非法)
+01100110
100100111──127
2.字母和字符的编码
字母和字符普遍采用ASCII码表示(美国标准信息交换码)
(ASCII──AmericanStandardCodeforInformationInterchange)
LSD
MSD
0
000
1
001
2
010
3
011
4
100
5
101
6
110
7
111
0
1
2
3
4
5
0000
0001
0010
0011
0100
0101
NUL
SOH
STX
ETX
EOT
ENQ
DLE
DC1
DC2
DC3
DC4
NAK
SP
!
#
$
%
0
1
2
3
4
5
@
A
B
C
D
E
P
Q
R
S
T
U
`
a
b
c
d
e
p
q
r
s
t
u
6
7
8
9
A
0110
0111
1000
1001
1010
ACK
BEL
BS
HT
LF
SYN
ETB
CAN
EM
SUB
&
(
)
*
6
7
8
9
:
F
G
H
I
J
V
W
X
Y
Z
f
g
h
I
J
v
w
x
y
z
B
C
D
E
F
1011
1100
1101
1110
1111
VT
FF
CR
SO
SI
ESC
FS
GS
RS
VS
+
.
/
;
<
=
>
?
K
L
M
N
O
[
\
]
k
l
m
n
o
{
|
}
~
DEL
它用7位二进制数(D6~D0)表示128个字符,其中20H~7EH是可打印字符,其余为非打印字符。
(最高位D7可用来作奇偶校验位)
在微机中,最高位(D7)作0处理。
(D7=1则为扩展ASCII码)
3.汉字编码
用二字节编码代表一个汉字(每字节只用低7位,最高位补0,这样可代表214个汉字和字符,实际上每字节定义域为21H~7EH,即94×94=8836)
国标码字符集汉字6763个(一级3755个,二级3008个),符号682个,共7445个。
国标码的内码是把汉字编码的二字节最高位都置1。
§1.3二进制数运算(binaryoperation)
一.加减法
1.减法
用补码的办法运算,用一个加法器就可实现加减法运算,所以把减法化成补码的加法来运算,如
73–56=73+(-56)=17,(-56)用补码表示
⑴二进制数减法为:
01001001
-00111000
00010001──17
⑵补码加法运算为:
01001001
+11001000──(10111000的补码)
100010001──17(补=原)
进位丢失
2.加法
分析:
(1)-34+(-45)=-79
原码:
10100010求补11011110
10101101+11010011
110110001──-79(正确)
(2)21+(-117)=-96
原码:
00010101求补00010101
11110101+10001011
10100000──-96(正确)
(3)90+107=197
原码=补码01011010
+01101011
11000101──-59(错误)
(4)-110+(-92)=-202
原码:
11101110求补10010010
11011100+10100100
100110110──54(错误)
8位二进制补码所能表示的数的范围为–128~+127,超出则溢出,因此
两数同号相减或异号相加不会溢出
两数同号相加或异号相减可能溢出
判别法:
V=CY7CY6,V=0正确,V=1溢出
000
011溢出
101
110
对16位补码运算,V=CY15CY14
二.乘除法
(1)乘法
通常与十进制运算一样,如
11011010=10000010
1101被乘数
1010乘数
0000
1101部分积
0000
1101
10000010乘积
计算机采用边乘边累加来实现,下面是部分积右移法
1101
1010
0000部分积
0000部分积右移一位
+1101被乘数与乘数上一位积
11010部分积
11010部分积右移一位
+0000·
011010·
011010·
+1101
10000010乘积
(2)除法
与十进制运算一样,如1101商
除数1101001110被除数
110
111
110
110
110
0
三.小数点
定点表示法
①纯小数定点法:
数符.尾数>-1,<1,(小数)
②整数定点法:
数符尾数.≥0,<0(整数)
浮点表示法
阶符阶码尾符尾数
设阶码的值=P
阶符为0时小数点后移P位,为1时小数点前移P位
尾符为0时尾数正,为1时尾数负
例:
N=100.1B=230.100101101001
阶符阶码尾符尾数
四.几个计算机常用名词
1.位(Bit)(BinaryDigit)
计算机所能表示的最小的数据单位,0和1
2.字(Word)
cpu与输入/输出设备及存储器之间传送数据的基本单位,
数据总线的宽度(条数),即字长,有
1位,4位,8位,16位,32位等等
3.字节(Byte)
1字节=8位(8Bit)
4.K和KB
K=210=1024,M=210K=220,G=210M=220K=230
KB=1024Byte
MB=1024KB=1048576Byte
GB=1024MB=1048576KB=1073741824Byte
5.指令:
规定计算机进行某种操作的命令
6.指令系统:
一台计算机所能执行的全部指令
7.程序:
为完成某种任务而编制的一系列指令
§1.4逻辑运算和逻辑电路(logicaloperation&logicalcircuit)
一.布尔代数
又叫开关代数、逻辑代数
Y=f(A.B.C.D)
特点:
①变量A.B.C.D.…均只有二种可能数值0和1
②函数f只有“与”、“或”、“非”三种基本运算方式。
1.“与”运算:
Y=A•••••B•C•D•…
其结果变量中有“0”时Y必然为“0”
2.“或”运算:
Y=A+B+C+…
其结果变量中有“1”时Y必然为“1”
3.“非”(反码):
Y=A,A是A的反码
有A=A
4.摩根定理
①A+B=A•••••BA+B+C+D+…=A•••••B•C•D•…
②A•••••B=A+BA•••••B•C•D•…=A+B+C+D+…
二.三个基本门电路
1.与门
Y=A•••••B
控信
ABY
000
010关
100开
111
2.或门
Y=A+B
控信
ABY
000
011开
101关
111
3.非门
Y=A
AY
01
10
三.异或门
Y=A⊕B=A•B+A•B
控信
ABY
000
011直通
101取反
110
其组成为:
四.触发器
一种存储元件,以高低电平方式存储一位二进制数码,常用的有
R-S触发器、D触发器、JK触发器
R-S触发器:
D触发器:
JK触发器:
五.寄存器
1、缓冲寄存器
2、移位寄存器
3、计数器
寄存器用于传送信息,主要有三大类,即地址寄存器、数据寄存器和控制寄存器
标志寄存器用于保留指令执行后的状态
六.译码器
用来将输出的代码变成控制信号,如2-4译码器
七.三态门(三态缓冲器)
三个输出态,即“0”、“1”和高阻态
例:
双向传输电路,这种接法A、B之间没有高阻态
三态缓冲器:
常用来作为微处理机数据总线的输入缓冲,被选通时才允许输入设备将数据送到系统数据总线上,未选通的设备与总线隔离,三态缓冲器对经它传送的数据还起驱动放大作用
锁存器:
CPU把数据送给输出设备时在总线上停留时间很短,必须利用数据锁存器及时把它锁存起来,让总线得以他用,以便较慢的外设有足够的时间接收和处理数据
八.运算电路
1.一位二进制数加法与半加法器(HalfAdder)
真值表:
AB
S(和)C(进位)
00
01
10
11
00
10
10
01
逻辑:
S=A⊕B
C=A·B
电路:
2.全加法器(FullAdder)
真值表:
AiBiCi
SiCi+1
000
001
010
011
100
101
110
111
00
10
10
01
10
01
01
11
逻辑:
Si=Ci⊕(Ai⊕Bi)
Ci+1=(Ai·Bi)+[Ci·(Ai⊕Bi)]
或:
Si=Ai⊕Bi⊕Ci
Ci+1=Ai·Bi+Bi·Ci+Ci·Ai
电路:
四位全加法器组成:
3.二进制补码加法器/减法器
4.算术逻辑单元ALU(ArithmeticLogicUnit)
算术加法:
1+1=10有进位
逻辑加法:
1+1=1无进位
§1.5计算机的基本结构与原理(basicstructure&principleofcomputer)
一.计算机的组成原理
人工:
运算工具记录人脑
计算机:
运算器存储器控制器输入设备输出设备
1.基本硬件组成
注:
双线表示数据信息,单线表示控制信息,箭头表示传递方向
①主机:
由运算器、控制器、主存储器组成
②中央处理器CPU(CentralProcessingUnit):
由运算器、控制器组成
③外设:
主机以外的各种I/O、外存储器统称之
2.软件
①系统软件:
一般由厂家提供,是生成、准备和执行其他程序所需的一组程序
操作系统:
用来组织计算机的工作流程,管理调度各种软硬件资源,检查程序和机器故障等
解释程序:
把某种语言程序翻译成机器语言程序,逐条翻译逐条执行
编译程序:
把高级语言源程序编译成某种中间语言或机器语言的目标程序
汇编程序:
把用汇编语言编写的源程序翻译成机器语言目标程序
诊断程序:
检查程序的错误和计算机的故障并指示出错点等
程序设计语言
机器语言:
用二进制代码0和1形式表示的计算机能够识别和执行的语言
汇编语言:
用助记符表示的面向机器的程序设计语言,是一种初级语言
高级语言:
又称算法语言、编译语言,是一种面向过程而独立于计算机硬件结构的通用语言
②应用软件、软件包、数据库
应用软件:
为解决某个应用领域的具体任务而编制的程序
软件包:
按功能不同组成的标准化、模块化的应用软件
数据库:
按一定形式和规律加以组织建立起来的方便于使用、检索、处理的数据
二.微型计算机系统的组成(见P1,F1-1)
有微处理器(CPU)、存储器(ROM、RAM)和输入/输出接口电路,通过接口电路与外部设备相连接,硬件各部分通过三组总线(地址总线、数据总线、控制总线)连接
微处理器(CPU):
包括运算器、控制器和寄存器阵列等
存储器:
最小单位是一位二进制代码,若干个最小单位(如8位)组成一个存储单元,许多存储单元组成一个存储器,每个单元一个编号,称地址,N个单元其地址号从0到N-1
只读存储器ROM存储信息不因断电而丢失
随机存储器RAM可随时读写,但掉电后信息丢失
I/O外设
总线
微型计算机由运算器、控制器、存储器、输入/输出设备、总线构成
三.CPU结构特点
1.运算器(算术逻辑单元)
作算术运算:
加、减、乘、除
逻辑运算:
与、或、非、异或等
2.寄存器
①通用寄存器组,存放操作数和运算结果
②标志寄存器,反映运算结果的标志状态位
③程序计数器,也叫指令指针,提供程序中指令的地址
④堆栈指示器,指示堆栈区最新存放地址
3.指令寄存器
寄存指令的操作码
4.指令译码器和CPU控制逻辑
指令译码器将寄存器的指令操作码译码后送CPU控制器进行各种控制
四.总线结构
一组传输信息的导线,它把微机各部分连接起来作为传输信息的公共通道
分时使用例:
双向4位数据总线:
内部总线:
CPU内部传送信息的通道
系统总线:
是指从处理器引出的用以和存储器及I/O设备进行信息交换的信号线,有地址总线,数据总线和控制总线。
其使用特点是:
1.某一时刻只能由一个总线主控设备来控制系统总线
2.某一时刻只能有一个发送者向总线发送信号,但可有多个设备从总线同时获得信号。
地址总线,单向,由CPU发向存储器或I/O接口电路
数据总线,双向,数据总线的条数即为CPU的字长
控制总线,与CPU连接的一组控制线,单向或双向,如WR、
RD、M/IO、INTR等
五.IBMPC/XT结构
IBMPC/XT由主机、键盘、显示器等组成
Intel8088CPU工作于最大模式,系统时钟4.77MHZ(14.31818MHZ÷3)
1.中央处理器:
8088CPU,配8284时钟发生器、8237DMA控制器、8253定时/计数器、8259中断控制器、8255并行接口
2.只读存储器:
板上有64KBROM空间,实际安装40KB(8KBBIOS,32KBBASIC)
3.随机存储器:
板上有256KB,可扩充
4.I/O适配器:
用于接收键盘串行数据,初始化键盘,控制、驱动扬声器
5.I/O通道:
8个(PC5个)插脚相连的扩充槽
另外,板上有8位DIP开关提供系统配置信息,20位存储器地址,10位I/O端口地址
六.微机系统性能指标
1.字长,直接影响计算机精度、功能和速度
2.存储容量,计算机可以处理的数据量和程序大小
一般8位机内存64KB,16位机大于1MB
3.运算速度,用平均运算速度、每秒执行指令条数、指令