PowerPoint 演示文稿

Download Report

Transcript PowerPoint 演示文稿

COMPUTER SCIENCE AND TECHNOLOGY
吉林大学远程教育学院
微机原理及汇编语言
主讲人: 赵宏伟
教授
总学时: 80
吉林大学计算机科学与技术学院
第 一讲
COMPUTER SCIENCE AND TECHNOLOGY
COMPUTER SCIENCE AND TECHNOLOGY
第1章 绪论
1.1
概述
• 计算机诞生背景:第二次世界大战
• 计算机诞生时间:1946年2月15日
• 第一台计算机的名字: ENIAC
Electronic Numerical Integrator
And Computer (电子数字积分计算
机)
COMPUTER SCIENCE AND TECHNOLOGY
COMPUTER SCIENCE AND TECHNOLOGY
ENIAC描述
•
•
•
•
•
•
•
•
18000多个电子管
1500个继电器
10000只电容和7000个电阻
重量30吨
占地面积170平方米
耗电150千瓦
运算速度每秒5万次
当时价值48万美元
COMPUTER SCIENCE AND TECHNOLOGY
COMPUTER SCIENCE AND TECHNOLOGY
按性能、价格、体积的不同
计算机分为六大类:
• 巨型机
• 小型机
大型机
微型机
中型机
单片机
COMPUTER SCIENCE AND TECHNOLOGY
COMPUTER SCIENCE AND TECHNOLOGY
计算机发展年代划分依据
• 第一台电子计算机的诞生揭开了现
代计算机发展历史的序幕。半个多
世纪以来,计算机技术以“万马奔
腾”之势,一日千里,迅猛发展
• 计算机发展的年代划分依据其硬件
特征和软件特征:
硬件特征是指电子计算机采用的物
理器件
软件特征是指计算机使用的软件环
境
COMPUTER SCIENCE AND TECHNOLOGY
COMPUTER SCIENCE AND TECHNOLOGY
计算机已发展了四代
计算机的发展已更新了四代 :
•
•
•
•
第一代: 电子管计算机时代
第二代: 晶体管计算机时代
第三代: 集成电路计算机时代
第四代: 大规模集成电路计算机时代
COMPUTER SCIENCE AND TECHNOLOGY
COMPUTER SCIENCE AND TECHNOLOGY
计算机走向新时代
计算机的发展方向 :
• 第五代: “非冯.诺伊曼”计算机时代
• 第六代: 神经计算机时代
光计算机时代
生物计算机时代
COMPUTER SCIENCE AND TECHNOLOGY
COMPUTER SCIENCE AND TECHNOLOGY
微型计算机诞生
• 微型计算机诞生于20世纪 70年代
• 微型计算机特点:体积小、重量轻、
功耗低、可靠性高、价格便宜、使
用方便、软件丰富
• 微型计算机的核心是微处理器(CPU)
• 每出现一个新的微处理器,就会产
生新一代的微型计算机
COMPUTER SCIENCE AND TECHNOLOGY
COMPUTER SCIENCE AND TECHNOLOGY
微型计算机发展大致分为五代(1)
第一代:4位机发展和8位机萌芽阶段
• 从1971年到1973年
• 代表产品:Intel 4004和MCS-4微型机
Intel 8008和MCS-8微型机
• 字长:4位或8位
• 特点:指令系统比较简单,运算功能较差,
价格低廉
• 应用:面向家电、计算器和二次仪表
COMPUTER SCIENCE AND TECHNOLOGY
COMPUTER SCIENCE AND TECHNOLOGY
微型计算机发展大致分为五代(2)
第二代:8位机发展阶段
• 从1973年到1977年
• 代表产品: Intel 8080/8085、MC 6800、
Z 80、R 6502
• 字长:8位
• 特点:指令系统比较完善,运算速度提高
一个数量级,寻址能力有所增强
• 应用:面向家电、智能仪表、工业控制
COMPUTER SCIENCE AND TECHNOLOGY
COMPUTER SCIENCE AND TECHNOLOGY
微型计算机发展大致分为五代(3)
第三代:16位机发展阶段
• 从1978年到1985年
• 代表产品:Intel 8086/8088、80186、
80286,MC 68000、Z 8000
• 字长:16位
• 特点:指令系统丰富,采用多级中断,多
种寻址方式,段式存储结构,配有功能强
大的系统软件
• 应用:工业控制
COMPUTER SCIENCE AND TECHNOLOGY
COMPUTER SCIENCE AND TECHNOLOGY
微型计算机发展大致分为五代(4)
第四代:32位机发展阶段
• 从1985年到1992年
• 代表产品:Intel 80386 、80486
• 字长:32位
• 特点:内存容量已达1MB以上,硬盘技术
不断提高,发展了32位的总线结构,各种
品牌机涌向市场,如COMPAQ、DELL等,这
些微型机在性能上已赶上传统的超级小型
机,可执行多任务、多用户操作。
• 应用:办公自动化、网络环境
COMPUTER SCIENCE AND TECHNOLOGY
COMPUTER SCIENCE AND TECHNOLOGY
微型计算机发展大致分为五代(5)
第五代:64位机产生及发展阶段
• 从1992年到现在
• 代表产品:Intel Pentium、Itanium
• 字长:64位
• 特点:外部数据线64位字长,32位以上地
址总线,增加了虚拟现实等多媒体能力和
通信上的应用。
• 应用:办公自动化、网络服务器
COMPUTER SCIENCE AND TECHNOLOGY
COMPUTER SCIENCE AND TECHNOLOGY
微型计算机发展趋势(1)
1.中央处理器
• 更小的布线宽度和更多的晶体管 。目前,
大部分CPU都已经采用了0.18微米技术,
减小布线宽度是提升CPU速度的关键。几
年之内,0.13微米技术、甚至0.07微米技
术将可以普遍应用于CPU,届时CPU主频将
达到5GHz,晶体管数量达到2亿个
• 64位CPU成为主流
• 更高的总线速度 ,有希望达到1GHz
COMPUTER SCIENCE AND TECHNOLOGY
COMPUTER SCIENCE AND TECHNOLOGY
微型计算机发展趋势(2)
2.系统存储器
•
•
•
•
CPU集成更大的高速二级缓存
内存容量更大,速度更快
硬盘容量也更大,速度更快
DVD-RAM普及
COMPUTER SCIENCE AND TECHNOLOGY
COMPUTER SCIENCE AND TECHNOLOGY
微型计算机发展趋势(3)
3.多媒体系统
•
•
•
•
显卡的性能更高
图形技术进一步发展
大尺寸显示器成为主流
数字式音箱占领市场
COMPUTER SCIENCE AND TECHNOLOGY
COMPUTER SCIENCE AND TECHNOLOGY
微型计算机发展趋势(4)
4.网络
• 利用有线电视线路的Cable Modem或利用
电话线路的ADSL将会完全替代现在的56K
Modem,成为主要的接入方式,将得到近
8M的下行带宽
5.整机
• 更加趋于个性化。利用红外无线技术将减
少机箱背后的连线,使主机与外设进行无
线通信
COMPUTER SCIENCE AND TECHNOLOGY
COMPUTER SCIENCE AND TECHNOLOGY
Intel主要CPU芯片
COMPUTER SCIENCE AND TECHNOLOGY
COMPUTER SCIENCE AND TECHNOLOGY
1.2
计算机中的数和编码系统
• 计数制:一种计数的方法,用不同
的代码来表示任意数
• 计算机使用二进制数(B)
• 为方便二进制数的记忆,使用十六
进制数(H)
• 为与人们良好沟通,使用十进制数
(D)
COMPUTER SCIENCE AND TECHNOLOGY
COMPUTER SCIENCE AND TECHNOLOGY
十进制数的特点
1. 代码个数:具有10个不同的代码,
分别是 0,1,2,3,4,5,6,7,
8,9
2. 进位规则:逢10进1
3. 权:以10为底的幂
• “权”是一种位置系数
COMPUTER SCIENCE AND TECHNOLOGY
COMPUTER SCIENCE AND TECHNOLOGY
二进制数举例
• 例:十进制数6543.82可以写成:
(6543.82)10  6 103  5 102  4 101 
1
2
3 10  8 10  2 10
0
• 对于一个十进制数,任何一位数的大小等
于该位数码乘以权值。 10为基数,个位
上的权为1,从个位开始,向左则10倍10
倍地增长,向右则10倍10倍地减小。
COMPUTER SCIENCE AND TECHNOLOGY
COMPUTER SCIENCE AND TECHNOLOGY
吉林大学远程教育学院
微机原理及汇编语言
主讲人: 赵宏伟
教授
总学时: 80
吉林大学计算机科学与技术学院
第二讲
COMPUTER SCIENCE AND TECHNOLOGY
COMPUTER SCIENCE AND TECHNOLOGY
二进制数的特点
1. 代码个数:只有2个不同的代码,分
别是 0和1
2. 进位规则:逢2进1
3. 权:以2为底的幂
COMPUTER SCIENCE AND TECHNOLOGY
COMPUTER SCIENCE AND TECHNOLOGY
二进制数举例
• 例:(10110.011)2
=1×24+1×22+1×21+
1×2-2+1×2-3
=(22.375)10
• 对于一个二进制数,任何一位数的大小等于
该位数码乘以权值。
• 2为基数,个位的权为1,从个位开始,向
左则2倍2倍地增长,向右则2倍2倍地减小。
•
(1111.11)2= 8+4+2+1+0.5+0.25
=(15.75)10
COMPUTER SCIENCE AND TECHNOLOGY
COMPUTER SCIENCE AND TECHNOLOGY
十六进制数的特点
1. 代码个数:具有2个不同的代码,分
别是 0,1,…,9,A,B,C,D,
E,F
2. 进位规则:逢16进1
3. 权:以16为底的幂
COMPUTER SCIENCE AND TECHNOLOGY
COMPUTER SCIENCE AND TECHNOLOGY
十六进制数举例
• 例:十六进制数2AE.4H可以表示为:
(2AE.4)=2×162+A×161+E×160+4+16-1
• 对于一个十六进制数,任何一位数的大小
等于该位数码乘以权值。16为基数,个位
上的权为1,从个位开始,向左则16倍16倍
地增长,向右则16倍16倍地减小。
• FFFF=15×163+15×162+15×161+15×160
•
=(65535)10
•
FFF=(4095)10
•
FF=(255)10
• (64)16=6×161+4+160=(100)10
COMPUTER SCIENCE AND TECHNOLOGY
COMPUTER SCIENCE AND TECHNOLOGY
数制转换:二进制数→十进制数
• 根据权展开式可得到对应的十进制数:
• 例:(1101.101)2
=1×23+1×22+1×20+1×2-1+
1×2- 3
=(13.625)10
COMPUTER SCIENCE AND TECHNOLOGY
COMPUTER SCIENCE AND TECHNOLOGY
数制转换:十六进制数→十进制数
• 根据权展开式可得到对应的十进制数:
• 例:(64.C)16
=6×161+4×160+C×16-1
=96+4+0.75=(100.75)10
COMPUTER SCIENCE AND TECHNOLOGY
COMPUTER SCIENCE AND TECHNOLOGY
数制转换:十进制数→二进制数
• 除2取余法:
• 例:将112.25转换成二进制数。
•
112/2=56…余数0 →B0 (低位)
•
56/2=28…余数0 →B1
•
28/2=14…余数0 →B2
•
14/2=7 …余数0 →B3
•
7/2=3 …余数1 →B4
•
3/2=1 …余数1 →B5
•
1/2=0 …余数1 →B6
•
0.25×2=0.5 …整数=0 (高位)
•
0.5×2=1.0 …整数=1
•
所以:(112.25)10=(01110000.01)2
•
也可以将十进制数先转换成十六进制,
然后再将十六制数转换成二进制数。
COMPUTER SCIENCE AND TECHNOLOGY
COMPUTER SCIENCE AND TECHNOLOGY
数制转换:十进制数→十六进制数
• 将整数部分不断地用十六除,记下余数。小
数部分不断地用十六乘,记下乘积的整数部
分。
• 例:将301.6875转换成十六进制数。
•
301/16=18…余数 D→H0
•
18/16=1 …余数 2→H1
•
1/16=0 …余数 1→H2
•
0.6875×16=11.0000…整数 11→ H-1
•
所以:(301.6875)10=(12D.B)16
• 也可以将十进制数先转换成二进制,然后再
将二进制数转换成十六进制数。
COMPUTER SCIENCE AND TECHNOLOGY
COMPUTER SCIENCE AND TECHNOLOGY
数制转换:二进制数→十六进制数
• 一个十六进制数可以用四位二进制数
表示。从小数点开始向左每四位一组,
最后不足四位的前边添0。从小数点
开始,向右每四位一组,最后不足四
位的后边补0。
• 例:(0011 1101 1110.1011 1000)2
=(3DE.B8)16
COMPUTER SCIENCE AND TECHNOLOGY
COMPUTER SCIENCE AND TECHNOLOGY
数制转换:十六进制数→二进制数
• 只要将十六进制数用二进制方法表示即可
• 例:(DE.B)16=(1101 1110.1011)2
(A3.9)16=(1010 0011.1001)2
COMPUTER SCIENCE AND TECHNOLOGY
COMPUTER SCIENCE AND TECHNOLOGY
十进制、二进制、十六进制的对应关系
COMPUTER SCIENCE AND TECHNOLOGY
COMPUTER SCIENCE AND TECHNOLOGY
二进制编码的十进制数(BCD编码)
• 用二进制编码表示的十进制数称为
二-十进制码,简称BCD码 (Binary
Coded Decimal)
• BCD码是十进制数,但用二进制数
来表示
• BCD码有多种表示方法,最常用的
是8421 BCD码
• 8421 BCD码每一位用四位二进制数
表示
COMPUTER SCIENCE AND TECHNOLOGY
COMPUTER SCIENCE AND TECHNOLOGY
8421 BCD 码的编码方案
十进制
8421 BCD 码
十进制
8421 BCD 码
0
1
2
3
4
5
6
7
0000
0001
0010
0011
0100
0101
0110
0111
8
9
10
11
12
13
14
15
1000
1001
0001 0000
0001 0001
0001 0010
0001 0011
0001 0100
0001 0101
COMPUTER SCIENCE AND TECHNOLOGY
COMPUTER SCIENCE AND TECHNOLOGY
BCD运算与存储
• BCD码: 0000 0001 0010 0011 ···1001
• 十进制数:0
1
2
3
··· 9
• 例:(234.15)10写成BCD码表示形式
(234.15)10=(0010 0011 0100.0001 0101)BCD
• 例:(00010001.01)2写成BCD码形式
•
(0001 0001.01)2=(17.25)10
•
=(0001 0111.0010 0101)BCD
• 运算规则:在4位二进制代码内实行二进制运算,
在各位十进制数之间实行逢十进一的运算。
• 存储方式:
以字节8位二进制数为最小单位。
• 压缩BCD码即一个字节存储两个BCD码
例:(1001 0010)BCD =(92)10
• 非压缩BCD码即一个字节存储一个BCD码
例:(0000 1001 0000 0010)BCD=(92)10
COMPUTER SCIENCE AND TECHNOLOGY
COMPUTER SCIENCE AND TECHNOLOGY
ASCII字符编码
• 计算机既要处理数值数据,还要处理字母、数字和符号
(简称字符),而计算机内部只能识别二进制代码,所以
必须将字符进行编码
• 目前微型计算机普遍采用的是美国国家信息交换标准字符
码-ASCII码(American Standard Code for Information
Interchange)
• ASCII码采用7位二进制代码对字符编码,故可表示128个
字符,包括控制符号、阿拉伯数字、英文大小写字母及专
用符号。如0~9的ASCII码为30H~39H,英文大写字母A~
Z的ASCII码为41H~5AH
• 一个字节为8位,在用一个字节表示一个ASCII码时,通常
认为最高位为0。有时根据需要也用最高位作为奇偶校验
位。
COMPUTER SCIENCE AND TECHNOLOGY
COMPUTER SCIENCE AND TECHNOLOGY
ASCII 码字符表(7位码)
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
US
+
,
-
。
/
;
<
=
>
?
K
L
M
N
O
[
\
]
^
_
k
l
m
n
o
{
|
}
~
DEL
COMPUTER SCIENCE AND TECHNOLOGY
COMPUTER SCIENCE AND TECHNOLOGY
无符号二进制数的算术运算
• 加法:
0+0=0 0+1=1 1+0=1 1+1=0
• 减法:
0-0=0 0-1=1 1-0=1 1-1=0
• 乘法:
0×0=0 0×1=0 1×0=0 1×1=1
• 除法:
乘法的逆运算,可以用减法和右移
运算实现
COMPUTER SCIENCE AND TECHNOLOGY
COMPUTER SCIENCE AND TECHNOLOGY
无符号二进制数值范围
• 一个n位的无符号二进制数X,其数
值范围为:
0≤X≤2n-1
• 例如,n=8,则X=28 –1=255
• 溢出:最高有效位产生进位
COMPUTER SCIENCE AND TECHNOLOGY
COMPUTER SCIENCE AND TECHNOLOGY
无符号二进制数的逻辑运算
• “与”:
0∧0=0 0∧1=0 1∧0=0 1∧1=1
• “或”:
0∨0=0 0∨1=1 1∨0=1 1∨1=1
• “非”:
1=0 0=1
• “异或”:
0  0  0 1 1  0 0 1  1 1  0  1
COMPUTER SCIENCE AND TECHNOLOGY
COMPUTER SCIENCE AND TECHNOLOGY
带符号二进制数的表示及运算
• 一个带符号的数在机器中的表示形
式称为机器数,其数值称为真值
• 机器数有三种表示法:原码、反码
和补码
• 计算机中带符号的数用补码表示
COMPUTER SCIENCE AND TECHNOLOGY
COMPUTER SCIENCE AND TECHNOLOGY
原码
• 正数的符号位用“0”表示,负数的符号位用“1”
表示,绝对值的编码与无符号数编码规则相同
• 例如, X=+1010011 [X]原=01010011
X=-1010011 [X]原=11010011
• 对于8位二进制原码:
1.0有两种表示形式
[+0]原=00000000 正零
[-0]原=10000000 负零
2.所能表示的数值范围是 一127~+127
[+127]原=01111111
[-127]原=11111111
• 原码表示简单易懂,易于形成。但是,两个异号
数相加或两个同号数相减,就要做减法操作
COMPUTER SCIENCE AND TECHNOLOGY
COMPUTER SCIENCE AND TECHNOLOGY
吉林大学远程教育学院
微机原理及汇编语言
主讲人: 赵宏伟
教授
总学时: 80
吉林大学计算机科学与技术学院
第三讲
COMPUTER SCIENCE AND TECHNOLOGY
COMPUTER SCIENCE AND TECHNOLOGY
反码
• 正数的反码表示与原码相同,最高位为符号位,
用“0”表示正,其余位为数值位
• 例如, [+4]反=00000100
• 负数的反码,表示为该数对应的正数按位取反
(包括符号位)
• 例如, [+4]反=00000100
[-4]反=11111011
• 对于8位二进制反码:
1.0有两种表示形式
[+0]反=00000000 正零
[-0]反=11111111 负零
2.所能表示的数值范围是 一127~+127
[+127]反=01111111
[-127]反=10000000
COMPUTER SCIENCE AND TECHNOLOGY
COMPUTER SCIENCE AND TECHNOLOGY
补码
• 正数的补码表示与原码相同(当X≥0,[X] 补=[X] 反=[X] 原),
即最高位为符号位,用“0”表示正,其余位为数值位
• 例如 , [+4]补=00000100
• 负数的补码等于其相应的反码加1(在最低位加1)(当X﹤
0时,[X]补=[X]反+1)
• 例如, [- 4]补=[- 4]反+1
=11111011+1
=1111 1100
• 对于8位二进制补码:
1. 0的表示是唯一的:
[+0]补=[-0]补=00000000
2. 所能表示的数值范围是 一128~+127
[+127]补=01111111
[-128]补=10000000
COMPUTER SCIENCE AND TECHNOLOGY
COMPUTER SCIENCE AND TECHNOLOGY
补码定义
• 补码是根据同余的概念得出来的:
Z=nK+Y (mod K)
• K为模,n为任意整数,即在模的意义下,
数Z与Y互补。
• 若设n=1,K=2n
则有: Z= 2n+Y (mod 2n)
COMPUTER SCIENCE AND TECHNOLOGY
COMPUTER SCIENCE AND TECHNOLOGY
补码举例
• 例: 已知X=+011 0100,Y=-011 0100求[X]补和[Y]补
[X]补=0011 0100
[Y]补=[Y]反+1=1100 1100
根据定义:[Y]补=28+(-011 0100)
=1 0000 0000 + (-011 0100)=1100 1100
• 例:设字长8位,试写出+4和-29的补码,并用16进制数表示。
[+4]补=[+4]原=0000 0100B=04H
[-29]原=1001 1101
[-29]补=1110 0011=E3H
• 例:设X=19/128,字长8位(含符号位),求[X]原=?,
[X]补=?,[-X]补=?。
[X]原=0001 0011/27=0.0010011
[X]补= 0.0010011
[-X]补=1.1101101
COMPUTER SCIENCE AND TECHNOLOGY
COMPUTER SCIENCE AND TECHNOLOGY
真值与补码之间的转换
• 对于一个用补码表示的8位二进制数,当其符号为
0时,补码等于原码,真值就是数值部分。
• 例:已知,[X]补=0010 1110,求X的真值
解:符号位等于0,为正数
X=+010 1110=(+46)10
• 对于一个用补码表示负数,其符号为1,求其真值
的方法是将此补码再求补,即除符号位外低7位取
反加1。
• 例:已知,[X]补=1101 0010,求X的真值。
解:符号位为1,X为负数,对其数值部分求补:
X=[[X]补]补=-010 1110=(-46)10
COMPUTER SCIENCE AND TECHNOLOGY
COMPUTER SCIENCE AND TECHNOLOGY
补码运算:和的补码等于补码之和
• [X+Y]补=[X]补+[Y]补
• 例:已知[X]补=0.1001 [Y]补=1.1101
求 [X+Y]补=?
• 解: [X]补=0.1001
+[Y]补=1.1101
1 0.0110
• 符号位产生进位,在模定义下,机器会自动
丢失
• 2和0对模2同余
COMPUTER SCIENCE AND TECHNOLOGY
COMPUTER SCIENCE AND TECHNOLOGY
补码运算:差的补码等于补码之差
• 差的补码等于第一个数的补码与第二个负数的补
•
•
•
•
码之和
[X-Y]补=[X+(-Y)]补=[X]补+[-Y]补
例:已知[X]补=0011 0011 [Y]补=0100 0010,
求[X-Y]补=?
解: 由于[Y]补=0100 0010 [-Y]补=1011 1110
[X]补= 0011 0011
+ [-Y]补= 1011 1110
1111 0001
结果是正确的
[-Y]补是对[Y]补的每位包括符号位按位取反加1
COMPUTER SCIENCE AND TECHNOLOGY
COMPUTER SCIENCE AND TECHNOLOGY
1.3
计算机基础
• 计算机的硬件系统结构如图所示,由存储器、控制器、运
算器、输入设备和输出设备五大部分组成。控制器和运算
器合在一起称为CPU(中央处理器)。(内)存储器和中
央处理器合在一起称为主机。在计算机硬件系统中不属于
主机的设备都属于外部设备,或叫外围设备,简称外设。
主机和外设合在一起构成了计算机系统。通常,将一个仅
由硬件组成的计算机称为“裸机”。
输入设备
运算器
存储器
控制器
输出设备
数据信息
控制信息
图 1.1.1
指令
计算机基本结构
COMPUTER SCIENCE AND TECHNOLOGY
COMPUTER SCIENCE AND TECHNOLOGY
常用名词术语(1)
• 位(bit):计算机处理的最小数据单位,只能为
“0”或“1”,缩写b
• 千位(Kilobit):代表210位,即1024位,缩写
Kb
• 兆位(Megabit):代表220位,即1024×1024位,
缩写Mb
• 千兆位(Gigabit):代表230位,即1024 Mb ,
缩写Gb
• 兆兆位(Terabit):代表240位,即1024 Gb ,缩
写Tb
COMPUTER SCIENCE AND TECHNOLOGY
COMPUTER SCIENCE AND TECHNOLOGY
常用名词术语(2)
• 字节(byte):计算机中存储器容量的基本单位,
一个字节由8位二进制数据组成,byte通常缩写B,
同样有KB、MB、GB、TB
• 字(Word):不同的场合有不同的含义,软件
上通常指2个字节,硬件上一般指处理器外部数
据总线的宽度
• 字长:计算机运算部件直接能处理的二进制数据
的位数。字长愈长,计算机的处理能力愈强,运
算精度愈高,指令功能愈强,可寻址的存储空间
也愈大
• 主频:主时钟的频率,主频愈高,微型计算机的
速度愈快
COMPUTER SCIENCE AND TECHNOLOGY
COMPUTER SCIENCE AND TECHNOLOGY
1.4
计算机硬件和软件
• 完整的计算机系统由硬件(硬件)和软件(软件)组成。
• 硬件是构成计算机的物理实体。
• 软件是支持计算机有效的运行和完成各种操作的程序总称。
微型计算机系统
软件系统
系统软件
寄存器组
硬件系统
应用软件
主机
外部设备
CPU
存储器
I/O 接口
控制器
运算器
COMPUTER SCIENCE AND TECHNOLOGY
COMPUTER SCIENCE AND TECHNOLOGY
软件系统
• 包括系统软件和应用软件
• 系统软件包括操作系统OS和系统实用程序。
• 操作系统用于管理计算机的硬件和软件资源、任
务调度、文件管理、人机接口、I/O设备的驱动等。
• 实用程序包括高级语言的翻译程序/编译程序、汇
编语言、数据库、文本编辑、诊断调试程序及系
统工具。
• 应用软件是用户为解决各种实际问题而编址的程
序。
COMPUTER SCIENCE AND TECHNOLOGY
COMPUTER SCIENCE AND TECHNOLOGY
1.5
微型计算机的结构
• 微型计算机的基本硬件结构也是由五部分组成。
• 用大规模集成电路技术把运算器和控制器集成在
一起,就构成了微型计算机的核心──微处理器,
再配以大规模集成电路的主存储器芯片,通过接
口电路连接输入、输出设备就组成了微型计算机
的硬件系统,其结构如图所示。
AB
CB
CPU
DB
RAM
ROM
I/O
外设
COMPUTER SCIENCE AND TECHNOLOGY
COMPUTER SCIENCE AND TECHNOLOGY
微型计算机的硬件系统-CPU(1)
⑴ CPU
• CPU是计算机的核心部件,其内部主要由运算器、
控制器和寄存器组三部分组成。
运算器
• 运算器是计算机用来进行算术逻辑运算的部件
• 运算器的核心是加法器
• 基本功能:
1.对二进制代码进行加、减、乘、除基本运算
2.对二进制代码进行“与”、“或”、“非”
等逻辑运算
3.完成数据信息的传送
• 运算器组成:算术逻辑运算单元ALU,内部总线,
通用寄存器组,输入多路开关和数据锁存器,输
出移位多路开关
COMPUTER SCIENCE AND TECHNOLOGY
COMPUTER SCIENCE AND TECHNOLOGY
微型计算机的硬件系统-CPU(2)
控制器
• 控制器用于计算机硬件系统中,指挥、协
调各部件的工作,是整个计算机的中枢
• 基本功能:取指令、分析指令、执行指令、
输入/输出控制、中断处理
• 控制器构成:指令寄存器、指令计数器、
指令译码器、地址形成部件、时序信号发
生器、操作控制部件、中断机构
COMPUTER SCIENCE AND TECHNOLOGY
COMPUTER SCIENCE AND TECHNOLOGY
微型计算机的硬件系统-CPU(3)
寄存器组
• 寄存器组是CPU内部的若干个存储单元
• 分为专用寄存器和通用寄存器,专用寄存
器的作用是固定的,如堆栈指针、标志寄
存器等,通用寄存器可有多种用途
• 寄存器的数目因微处理器而定
• 寄存器组作用:暂存数据,避免频繁访问
内存,缩短指令长度和执行时间,给编程
带来方便
COMPUTER SCIENCE AND TECHNOLOGY
COMPUTER SCIENCE AND TECHNOLOGY
微处理器典型结构
地址总线(AB)
数据总线(DB)
数据缓冲器
地址缓冲器
内部总线
指令寄存器(IR)
指令译码器(ID)
通用寄存器
寄
存
器
组
累加器(ACC)
暂存器
堆栈指针(SP)
累加锁存器
程序计数器(PC)
操作控制器(OC)
操作控
制信号
ALU
…
控制总线(CB)
控制器
运算器
标志寄存器
COMPUTER SCIENCE AND TECHNOLOGY
COMPUTER SCIENCE AND TECHNOLOGY
微处理器简化结构
数据线
内部总线
指令寄存器
运算器
A
B
C
定时与控制
寄存器组
控制线
地址线
指令译码器
COMPUTER SCIENCE AND TECHNOLOGY
COMPUTER SCIENCE AND TECHNOLOGY
微型计算机的硬件系统-存储器
⑵存储器
• 存储器用来存储程序、原始数据、中间结果及运算结果
• 在计算机内部,程序中的指令和数据都是以二进制代码形
式出现的
• 两种基本的操作:读操作、写操作
• 存储器中若干个二进制位组成一个存储单元。计算机系统
对内存储器中的每一个存储单元进行编号,这个编号称为
该存储单元的地址
地址
内存
内存单元的地址和内容
• 内存由许多单元组成
• 每个单元存放8位二进制数
• 内存单元从0开始编址
00001H
11000111
00002H
00001100
……
F0000H
00111110
……
FFFFFH
01110010
COMPUTER SCIENCE AND TECHNOLOGY
①
00000100
AB
②
读
COMPUTER SCIENCE AND TECHNOLOGY
存储器读写操作示意图
地
址
译
码
器
地址
③
①
地址
00
10010111
00001000
00
04
地
址
译
码
器
10010111
AB
DB
08
③
00100110
00100110
DB
FF
FF
②
写
控制
控制
COMPUTER SCIENCE AND TECHNOLOGY
COMPUTER SCIENCE AND TECHNOLOGY
微型计算机的硬件系统-输入输出
⑶ 输入输出设备和输入输出接口
• 输入/输出设备:计算机与人之间进行信息交换的
设备
• 按功能分为3类:输入设备、输出设备和输入输出
兼用设备
• 输入设备:向主机输入程序、数据和命令信息的设
备,如键盘、鼠标、触摸屏等
• 输出设备:将计算机处理过的二进制代码信息,转
换成人们能识别的形式输出的设备,如打印机等
• 输入输出兼用设备:具有输入和输出功能的设备,
如,键盘与CRT显示器组成一台终端设备
COMPUTER SCIENCE AND TECHNOLOGY
COMPUTER SCIENCE AND TECHNOLOGY
微型计算机的硬件系统-总线
⑷ 系统总线
• 总线是由一组导线和相关电路组成。是各种公共信号线的
集合,是连接微机硬件系统各主要部分的通信通道。计算
机分三总线。
• 数据总线DB、地址总线AB和控制总线CB。
地址总线AB
 单向总线。位数决定了CPU的寻址能力。
 16位地址线寻址范围:216=64K
 20位地址线寻址范围:220=1024×1024=1M
数据总线DB
 双向总线,是CPU与存储器、CPU与I/O接口之间的数据
通道。
控制总线CB
 不同的控制信号有不同的方向。
 写信号由CPU送往存储器。
 中断响应信号由接口送往CPU。
COMPUTER SCIENCE AND TECHNOLOGY
COMPUTER SCIENCE AND TECHNOLOGY
1.6
Intel 8088的结构
• 8088/8086 CPU是PC/XT微型计算机的核心
部件
• 8088/8086 CPU可应用于各种规模的智能
控制系统
• 8088/8086 CPU具有最大模和最小模式,
以及内置的多任务处理能力
• 8088/8086 CPU具有40个引脚,某些引脚
具有双功能
• 属于第三代微处理器,8088外部数据总线
宽度8位,8086的数据总线宽度16位,具
有最小和最大两种工作模式
COMPUTER SCIENCE AND TECHNOLOGY
COMPUTER SCIENCE AND TECHNOLOGY
8088的功能结构
• 8086和8088结构极为相似,都是由两大部分构成
• 总线接口单元BIU
–负责与存储器和IO接口之间的信息传送
–由寄存器、指令指针寄存器、指令队列、地址加
法器以及总线控制逻辑组成。
–8088 指令队列长度4字节,8086指令队列长度6字
节
• 执行单元EU
–负责指令的执行
–由算术逻辑单元ALU、通用寄存器、标志寄存器和
EU控制电路组成。
COMPUTER SCIENCE AND TECHNOLOGY
通
器
用
寄
存
AH AL
BH BL
CH CL
DH DL
SP
BP
DI
SI
AX
BX
CX
DX
∑
COMPUTER SCIENCE AND TECHNOLOGY
8088的功能结构框图
段寄存器
指令指针
ALU数据总线(16位)
CS
DS
SS
ES
IP
内部暂存器
运算寄存器
ALU
标志寄存器
EU 控
制系统
执行单元
EU
Q总线
(8位)
总线接口
单元BIU
地址总线
20位
数据总线
8088:8位
8086:16
位
总线 控
外部
制逻辑
总线
指令队列
1 2 3 4 5 6
8088
8086
COMPUTER SCIENCE AND TECHNOLOGY
COMPUTER SCIENCE AND TECHNOLOGY
吉林大学远程教育学院
微机原理及汇编语言
主讲人: 赵宏伟
教授
总学时: 80
吉林大学计算机科学与技术学院
第四讲
COMPUTER SCIENCE AND TECHNOLOGY
COMPUTER SCIENCE AND TECHNOLOGY
8088的指令流水线
• 一条命令的执行过程:
取指令-- 取操作数(如果需要)-- 执行指令-- 写入存储器
• 8088出现以前,以上步骤顺序执行(串行)
• 8088内部有BIU、EU两个独立单元,可独立完成总线操作和执行指
令的任务,即两个单元可重叠工作
• “流水线”就是两次重叠或多次重叠操作
CPU
BUS
EU
BIU
BUS
8088 以前的处理器
取指 1
执行 1
存结果 1
取指 2
执行 2
取指 3
取操作数 3
执行 3
忙
闲
忙
忙
闲
忙
忙
闲
8088 处理器
执行 1
执行 2
取指 1
取指 2
存结果 1
忙
忙
忙
执行 3
执行 3
执行 4
取指 3
取操作数 3
取指 4
存结果 3
取指 5
忙
忙
忙
忙
忙
COMPUTER SCIENCE AND TECHNOLOGY
通
用
寄
存
器
COMPUTER SCIENCE AND TECHNOLOGY
8086/8088寄存器结构(1)
AH
AL
AX
BH
BL
BX
控制寄存器
CH
CL
CX
指令指针
IP
DH
DL
DX
状态标志
FLAGS
堆栈指针寄存器
SP
基址指针寄存器
BP
源变址寄存器
DI
目的变址寄存器
SI
图 2-18
段
寄
存
器
代码段寄存器
CS
数据段寄存器
DS
堆栈段寄存器
SS
附加段寄存器
ES
8088/8086 的内部寄存器
COMPUTER SCIENCE
AND TECHNOLOGY
COMPUTER SCIENCE AND TECHNOLOGY
8086/8088寄存器结构(2)
数据寄存器
• 4个数据寄存器:累加器AX、基址寄存器
BX、计数寄存器CX、数据寄存器DX
• 特点:可分为高8位(AH、BH、CH和DH)
和低8位(AL、BL、CL和DL),这两组8位
寄存器能分别寻址。这样,可以将数据寄
存器当作一个16位寄存器,也可用作两个
8位寄存器
• 可以用来存放8位或16位二进制操作数,
这些操作数可以是参加操作数、中间结果、
操作数地址
• 大多数算术和逻辑运算指令可以使用这些
寄存器
COMPUTER SCIENCE AND TECHNOLOGY
COMPUTER SCIENCE AND TECHNOLOGY
8086/8088寄存器结构(3)
指针和变址寄存器
• 4个:堆栈指针SP、基址指针BP、源变址
寄存器SI、目的变址寄存器DI
• 这4个16位寄存器只能按16位进行存取操
作,主要用来形成操作数的地址,用于堆
栈操作和变址运算中计算操作数和有效地
址
• SP、BP用于堆栈操作,SP用来确定堆栈在
内存中的地址,BP用来存放在现行堆栈段
的一个数据区的“基址”
• SI、DI用于变址操作,存放变址地址
• 这4个寄存器也可用作数据寄存器
COMPUTER SCIENCE AND TECHNOLOGY
COMPUTER SCIENCE AND TECHNOLOGY
8086/8088寄存器结构(4)
指令指针IP
• 16位专用寄存器,IP指向当前需要
取出的指令字节
• 当BIU从内存中取出一个指令字节后,
IP自动加l,指向下一个字节
• IP指向的是指令地址的段内地址偏
移量,又称偏移地址或有效地址
• 程序员不能对IP进行存取操作,程
序中的转移指令、返回指令以及中
断处理能对IP进行操作
COMPUTER SCIENCE AND TECHNOLOGY
×
15
COMPUTER SCIENCE AND TECHNOLOGY
8086/8088寄存器结构(5)
标志寄存器 FLAG
×
×
×
OF
DF
IF
TF
SF
ZF
×
AF
×
PF
×
CF
14
13
12
11
10
9
8
7
6
5
4
3
2
1
0
• 16位,其中有6个状态位、3个控制位
• 6个状态位:CF、PF、AF、ZF、SF、OF
• 3个控制位:IF、DF、TF
COMPUTER SCIENCE AND TECHNOLOGY
COMPUTER SCIENCE AND TECHNOLOGY
8086/8088寄存器结构(6)
段寄存器
• 内存中通常存放三种信息:
代码(指令):计算机执行何种操作
数据(字符、数值):程序处理的对象
堆栈信息:保存返回地址和中间结果
• 为清晰起见,这三类信息通常分别存放在
各自的存贮区域内(存贮系统中的不同存
贮段)
• 8086/8088系统中把可直接寻址的1兆字
节内存空间分为称作“段”的逻辑区域,
每个段的物理长度为64K字节。每个段的
起始地址的有关值存放在称为段寄存器的
4个16位寄存器中
COMPUTER SCIENCE AND TECHNOLOGY
COMPUTER SCIENCE AND TECHNOLOGY
8086/8088寄存器结构(7)
段寄存器
4个段寄存器为:
• 代码段寄存器CS,指向当前的代码段,指
令由此段取出
• 堆栈段寄存器SS,指向当前的堆栈段,堆
栈操作所需的就是该段存贮单元的内容
• 数据段寄存器DS,指向当前数据段,通常
用来存放程序变量
• 附加段寄存器ES,指向当前附加段,通常
也用来存贮数据
COMPUTER SCIENCE AND TECHNOLOGY
COMPUTER SCIENCE AND TECHNOLOGY
吉林大学远程教育学院
微机原理及汇编语言
主讲人: 赵宏伟
教授
总学时: 80
吉林大学计算机科学与技术学院
第五讲
COMPUTER SCIENCE AND TECHNOLOGY
COMPUTER SCIENCE AND TECHNOLOGY
8088/8086的存储器组织(1)
存储器分段
• 8088CPU寄存器皆为16位,内部ALU只能进
行16位运算,因此8088CPU对地址只能进行
16位运算,寻址范围仅216=65536(64K)字
节。所以引入“分段”概念,以获得20位地
址
• 一个段是存储器的一个逻辑单位,其长度可
达64KB,每个段都由连续的存储单元构成,
是存储器中独立的可分别寻址的单位
• 每段第一个字节的位置称为“段起始地址”,
可由软件指定
• 段起始地址:必须能被16整除(即XXXX0H)
• 几个段可以相互重叠,也可指向同一个空间
COMPUTER SCIENCE AND TECHNOLOGY
COMPUTER SCIENCE AND TECHNOLOGY
8088/8086的存储器组织(2)
存储器组织
• 8086/8088CPU有20条地址线,可以
配 置 1MB 的 存 储 器 , 地 址 编 号 为
00000H~FFFFFH
• 存储空间按8位字节进行组织,每个存
储单元存储一个字节数据,若存放
“字”数据(l6位),则存放在相邻
两个存贮单元之中,高字节存放在高
地址单元,低字节存放在低地址单元
• 指令、字节数据和字数据可以自由地
存放在任何字节地址中
COMPUTER SCIENCE AND TECHNOLOGY
COMPUTER SCIENCE AND TECHNOLOGY
8088/8086的存储器组织(3)
逻辑地址与物理地址
• 在具有地址变换机构的计算机中,有
两种存储器地址:
逻辑地址:允许在程序中编排的地址
物理地址:信息在存储器中实际存放
地址
在8086/8088系统中每个存储单元也
都认为有这两类地址。
COMPUTER SCIENCE AND TECHNOLOGY
COMPUTER SCIENCE AND TECHNOLOGY
8088/8086的存储器组织(4)
段基址与段内偏移量
• 8086/8088与存储器之间所有信息交换都
要使用20位的物理地址,而程序中所涉及的
地址都是16位的逻辑地址,对所给定的任一
存储单元而言有两部分逻辑地址:
“段基址”:决定了该段第一个字节的位
置
“段内偏移量”:该存储单元相对于该段
起点字节的距离
• 段基址存放在段寄存器CS、SS、DS和ES中
• 段内偏移量由SP、BP、SI、DI、IP以及相
应寄存器的组合而组成
COMPUTER SCIENCE AND TECHNOLOGY
COMPUTER SCIENCE AND TECHNOLOGY
8088/8086的存储器组织(5)
物理地址的生成
• 存储单元的20位物理地址是通过将16位的段基址左移4位再加
上16位的偏移地址而生成的,即:
物理地址=段基址×l0H+段内偏移量
• 例如,6000:0280的物理地址为60280H
• 8086/8088CPU中BIU单元的加法器可用来完成物理地址的
计算
16位段地址
: 16位段内偏移
(左移四位) 16位段地址
+
=
16位段内偏移
20位物理地址
COMPUTER SCIENCE AND TECHNOLOGY
COMPUTER SCIENCE AND TECHNOLOGY
8088/8086的存储器组织(6)
段寄存器的使用约定
• 8086/8088对访问不同的内存段所使用的段
寄存器和相应的偏移地址的来源有一些具体
的约定
内存访问类型
默认段寄存器
可指定段寄存器
段内偏移地址来源
取指令
CS
无
IP
2
堆栈操作
SS
无
SP
3
源串
DS
CS、ES、SS
SI
目地串
ES
无
DI
5
BP 用作基址寻址
SS
CS、ES、DS
按寻址方式计算得到的有效地址
6
一般数据存取
DS
CS、ES、SS
按寻址方式计算得到的有效地址
1
4
COMPUTER SCIENCE AND TECHNOLOGY
COMPUTER SCIENCE AND TECHNOLOGY
PC/XT基本配置-结构,支持芯片、连接方式
微处理器8088
ROM BIOS
协处理器8087
DRAM控制器
8253
定时/计数器
8237
DMA控制器
8259
中断控制器
DMA
页面寄存器
8250
串行通信控制器
8255
并行接口
主板上的RAM
8个8位62引脚扩展插槽
扩
展
总
线
缓
冲
PC总线
COMPUTER SCIENCE AND TECHNOLOGY
COMPUTER SCIENCE AND TECHNOLOGY
第1章 结束
请同学们按教材后的习题
及时复习
吉林大学远程教育学院
COMPUTER SCIENCE AND TECHNOLOGY