微机原理教案Word文档格式.docx
- 文档编号:18226022
- 上传时间:2022-12-14
- 格式:DOCX
- 页数:79
- 大小:123.02KB
微机原理教案Word文档格式.docx
《微机原理教案Word文档格式.docx》由会员分享,可在线阅读,更多相关《微机原理教案Word文档格式.docx(79页珍藏版)》请在冰豆网上搜索。
=±
10i)
80X86CPU一次处理的信息以字节为单位。
一字节表示8位二进制数,其数值范围是00000000~11111111即0~255;
双字节表示16位二进制数,其数值范围是00……00~11……11即0~65535;
四字节表示32位二进制数,80486字长;
八字节表示64位二进制数,80586字长。
计算机存贮器的基本存贮单位是存贮单元,每单元存放一字节二进制数。
存贮器由许多存贮单元组成,各存贮单元给予编号,称存贮地址,采用二进制数表示。
三、十六进制
基数16:
可表示数符为0~9、A~F,对应的十进制数为0~15。
是多位二进制数的一种简明表示形式,二进制整数从最低位(小数从最高位)起,每四位用一位十六进制数表示,二~十六对应位数值。
如:
10110011B=B3H
1FB.02H=000111111011.00000010BF3ADH=1111001110101101B
0000B——0H0100B——4H1000B——8H1100B——CH
0001B——1H0101B——5H1001B——9H1101B——DH
0010B——2H0110B——6H1010B——AH1110B——EH
0011B——3H0111B——7H1011B——BH1111B——FH
四、数制转换
1、十进制二进制
整数部分:
除基取余法——整数连续用基数2除,取各次余数,直到商为零。
例:
将237化为二进制数。
0|1|3|7|14|29|59|118|237
÷
2
最后得余数为最高位11101101首次得余数为最低位
得:
11101101
小数部分:
乘基取整法——小数连续乘基数2,每次取整数部分,直到小数为零。
0.6875化为二进制数。
0.68750.3750.750.50
×
2
1011
得0.1011
若小数乘2无法使尾数为零,则可根据精度要求求出足够位数。
一个十进制数既有整数又有小数,则分别转换后相加。
2、十进制十六进制
除基取余法
237化为十六进制数。
0|14|237
16
1413
(E)(D)
得EDH
小数部分:
乘基取整法
例:
化0.5429为十六进制数。
0.54290.68640.98240.7184
16
81015(若精度要求到小数点后三位,则此数略去)
(8)(A)(F)
得0.8AFH
3、十六进制十进制
整数部分:
按权展开法
例:
3D7BH=3×
163+13×
162+7×
161+11×
160
=3×
4096+13×
256+7×
16+11×
1
=12288+3328+112+11
=15739
一般不用;
使用时可化成二进制小数再作换算。
•二进制十进制:
一般二进制先换成十六进制,再转换成十进制。
•十进制十六进制:
一般十进制先转换成二进制,再转换成十六进制。
第二节码制
带符号数的表示方法:
二进制数最高位表示数符,其余位表示数值。
最高位0:
+1:
—
000000100表示+4100000011表示-3
1、原码尾数部分直接表示数值本身绝对值:
此称原码表示法。
{
x(x≥0)
表达式:
[x]原=2n-1-x(x≤0)
n=8,x=+4,则[x]原=00000100B
n=8,x=-3,则[x]原=27-(-00000011B)=10000000B+00000011B=10000011B
存在二种表示方式:
[x]原=00000000或x=+0
[x]原=10000000或x=-0
2、补码
二数相减,用电路实现减法,结构极为复杂。
当用实现时,用加法器就可完成减法。
加法器容易制作,故运算显得方便。
以时钟为例说明概念:
11点拨到9点:
①倒拨:
11+(-2)=9
②正拨:
11+10=12+9(看到的是9)
称模
—2与10本是二个不同数,但在此特定情况意义相同
称以12为模。
-2与+10对模是互补的;
或称-2与+10对模同余。
[x]补=模+x当x=-2时[x]补=12+(-2)=10
即10是以12为模的-2的补码。
因此,可写成:
11-2=11+10=12+9=9
以2n为模的补码定义为:
x(x≥0)可写成2n+x,但2n自动丢失
[x]补=2n+x=2n-|x|(x<
0)
当x≥0时,[x]补是x的本身值,最高位为0;
当x<
0时,[x]补=28+x
①x=+0000101B[x]补=00000101B
②x=-0000101B[x]补=100000000B+(-0000101B)=11111011B
对n位字长的二进制数,最高位仍为数符位。
例①:
x=+2=0000010B
[x]补=100000000B+00000010B=100000010B=00000010B
自动丢失符号位
例②:
x=-2=-0000010B[x]补=100000000B+(-0000010B)=11111110B
例③:
x=-127=-1111111B[x]补=10000001B
例④:
x=-128=-10000000B[x]补=10000000B
-128是特殊情况:
最高位既是数符位又是数值位。
•用8位二进制数表示一个带符号数,最高位是符号位,剩下7位表示数值。
•0与256的表示形式(始终零点与12点)完全相同。
8位二进制数可表示带符号数补码数值范围为:
00000000B~01111111B0~+127
10000000B~11111111B-128~-1
负数二进制补码的简单方法——变反加1
例:
设y=-0000010B(-2十)低7位变反得1111101B,再加1,得:
[y]补=11111110B
设y=-0000110B(-6十)[y]补=11111010B
已知补码,求真值:
正数:
X即[X]补,只是最高位0变成+
负数:
①根据定义处理X=[X]补-模=[X]补-256=-(256-[X]补)
②变反加1,最高位1改为负号。
已知[X]补=11111010B数值变反:
0000101B
加1:
0000110B
添加符号:
-0000110B
计算机加法器电路结构减法器电路简单得多,减去一个数,通过加上这个数的负数的方法实现,而负数则以补码形式出现。
补码运算使得减法运算变为加法运算
•计算机二进制数的算术运算以补码方式执行:
①先写出待运算数及其补码;
②用补码进行运算;
③根据补码形式的结果得出数值本身。
例1:
5-2=5+(-2)
x=+5=+0000101B[x]补=00000101B
y=-2=-0000010B[y]补=11111110B
[x+y]补=[x]补+[y]补=00000101B+11111110B
=100000011B=100000000B+00000011B=00000011B
得x+y=+0000011B=+3
例2:
14-32=14+(-32)=-18
x=14=+0001110B[x]补=00001110B
y=-32=-0100000B[y]补=11100000B
[x+y]补=[x]补+[y]补=00001110B+11100000B=11101110B
x+y=-0010010B=-(16+2)=-18
关于溢出的概念:
计算机加减运算数以补码形式出现:
●当二个正数相加(或一个正数减去一个负数),和(或差)不能超过+127,否则结果变为负;
●当二个负数相加(或一个负数减去一个正数),和(或差)不能小于-128,否则结果变为正;
此时称为溢出。
任何一个8(n)位二进制数既可表示一个不带符号数,又可表示一个带符号数,那么这个8(n)位二进制数就称为机器书,由它所代表的实际意义称为机器数的真值。
机器数11111101B表示一个数的原码,那么真值就是-1111101B;
机器数11111101B表示一个数的补码,那么真值就是-0000011B;
机器数11111101表示一个不带符号数,那么真值就是11111101。
第三节BCD码和ASCⅡ码
一、BCD码实际应用中一般计算问题的原始数据大多是十进制数,人们为计算机设计了一种用二进制数为它编码,该编码称BCD码(BinaryCodedDecimal)。
一个BCD码用四位二进制表示:
0001
(1)~1001(9)。
一个字节的BCD码可表示数值范围:
0~99
BCD码运算时的修正:
加法:
每半个字节结果不超过9不修正;
超过9则加6。
0100100048+
+)0110100169+
10110001低半字节有进位,修正
高半字节>
9,修正
+)01100110
00010111117+CY1
注意BCD码处理一般均为正数。
0001010115+
+)0010001123+
0011100038+
二、ASCⅡ码
计算机与补部设备之间交换英文字母及数据信息,以一定的代码形式出现,用7位二进制数编码的美国信息交换标准码(ASCⅡ码)使用最广。
0~9为30H~39H;
A、B、C、D……Z为41H~5AH
a、b、c、d……z为61H~7AH
作业:
P25/1.2~1.12
答案:
1.3完成下列数制转换
⑴10100110B=
⑶253.25=
⑷1011011.101B=
8位和16位二进制数的原码、补码、和反码可表示的数值范围分别是多少?
8位二进制数的原码可表示的数值范围:
8位二进制数的补码可表示的数值范围:
16位二进制数的原码可表示的数值范围:
16位二进制数的反码可表示的数值范围:
16位二进制数的补码可表示的数值范围:
1.4写出下列真值对应的原码和补码的形式。
⑴x=-1110011B[x]原=[x]补=
⑵x=71D=-1000111B[x]原=[x]补=
⑶x=+1001001B[x]原=[x]补=
1.7已知X和Y等真值,求[X+Y]的补码。
⑴x=-1110111By=+1011010B
[x+y]补=
⑵x=56Dy=-21D
[x+y]补=
1.8已知x=-1101001B,y=-1010110B,用补码求X-Y=?
1.9写出下列字符的ASCII码。
4A3=!
:
1.10若给字符4和9的ASCII码加奇校验,应是多少?
补充题:
已知一个数X的补码为11011110B,求其真值X,以及X的原码。
第四节小数点问题
①如何表示小数点②运算时小数点的对位
一、定点表示
1、规定小数点放在符号位之后:
纯小数
2、规定小数点放在小数位后面:
整数
特点是线路简单,但应用不方便。
二、浮点表示
43.562=101×
4.3562=102×
0.43562
1101.011=21×
110.1011=24×
0.1101011亦可写成=2-1×
11010.11
数学表达式:
d×
2±
P阶,一般用二个字节以上二进制数表示
尾数
以16位二进制数(双字节)的前6位表示阶码,后10位表示尾数
D15D14D10D9D8D0
阶码•
•尾数
阶符小数点位置尾数数符小数点位置
当尾数用补码表示时,采用双符号位。
上述浮点数可表示数值范围:
绝对值最大:
011111.00.11111111
232-1×
(1-2-8)≈231=15474836482(一百五十四亿)
除0以外的最小值:
1.1111100.000000001
2-(32-1)×
2-8≈2-39=1/239
二个浮点数的加减运算,首先要对阶,使阶码大小一致,才作尾数运算。
x:
0001100001101000B
y:
0001110011010010B
阶码小的向大的靠拢(不能让大的向小的靠拢,如此会丢失数据)
x=0001110000110100两尾数右移一位缩小一位,阶码加1
尾数运算后,若尾数两个符号位数值不同,表明尾数运算溢出。
此时,应使尾数右移一位,并使阶码值加1,此称向右规格化,简称右规。
本例两对阶后尾数相加:
x0000110100B
y0011010010B
x+y0100000110B
经右规,得尾数0010000011B,阶码001000B。
浮点数结果为0010000010000011B。
第五节逻辑运算
一.与运算(逻辑乘)真值表:
Y=A∧B(Y=A·
B)
A
B
Y
A、B为输入端,Y为输出端
二.或运算(逻辑加)真值表:
Y=A∨B(Y=A+B)
AY
A、B为输入端,Y为输出端
三.非运算(逻辑反)真值表:
Y=A
四.与非运算真值表:
Y=A∧B(Y=A·
五.或非运算真值表:
A、
B为输入端,Y为输出端
六.异或运算真值表:
⊕
Y=A⊕B
七.译码器——n位地址线可寻址2n个地址,对于每一组n位确定的二进制代码通过专门电路处理都有对应一条输出线表示这2n个地址中的一个地址。
该处理电路称译码器。
典型译码器74LS138介绍:
使能端
输入端
输出端
G1Y0
G2AY1
G2BY2
Y3
Y4
CY5
BY6
AY7
G1
G2
C
Y0
Y1
Y2
Y3
Y4
Y5
Y6
Y7
×
第二章微型计算机基本原理
输入出接口
第一节计算机组成
第二节存储器
又称主存或内存。
用于存放数据和程序代码。
1.存储单元地址和内容
存储地址——指存储单元编号。
由0开始;
8088CPU允许编址:
00000H:
00001H:
F0000H:
FFFFFH:
00000H~FFFFFH(220)
0~262144
2.
AB
存储器操作
设存储器寻址范围:
00H~FFH。
读操作(取数据)
要求从02H单元读出内容。
⑴.CPU程序计数器发存储地址
00002H,由地址总线加到译
码器,经译码选中02H单元。
⑵.CPU发读(RD)控制信号,02H单元内容(01011010B)被释放到数据总线。
写操作(存数据)
要求把数据55H存入08H单元。
⑴.CPU程序计数器发存储地址00008H,
由地址总线加到译码器,经译码选中
08H单元。
⑵.CPU把数据55H送到数据总线,同时
发写(WR)控制信号,
数据55H存入08H单元。
第三节微型计算机工作过程及实例
问题的处理可分成若干步骤,计算机用功能不同的各种指令完成每一步骤工作,指令由操作码和操作数组成。
完成既定任务的若干指令的有机集合称程序。
操作码——表示计算机要执行的动作,指令代码中不可缺少。
操作数——表示计算机要处理的数据,根据指令功能决定指令代码中是否包含。
作加法运算5+8=?
指令名称
助记符
机器码
指令长度
操作
数据传送
MOVA,5
操作码10110000
操作数00000101
2
5→(ACC)
加法
ADDA,8
操作码00000100
操作数00001000
(ACC)+8→(ACC)
停机
HLT
操作码11110100
(PC)+0→(PC)
PSW
冯.若依曼原理——把为完成某任务而编制的程序连同被处理的数据送到存储器保存,CPU自动根据以程序计数器(PC)值为存储器地址取出首条指令,然后执行,执行时PC自动加一,CPU根据程序计数器PC值再自动取出指令,并予以执行,依此类推,直到结束。
作业:
1、P31/5、
2、计算机三总线的作用是什么?
3、P31/11(4)RAM、ROM
第三章8088/8086微机体系结构
第一节8088/8086CPU
一.指令流水线
取指执行再取指再执行再取指再执行
传统CPU执行程序过程:
执指1执指2执指3……
8088/8086CPU执行程序过程——流水操作
结构上分成总线接口部件BIU——负责取指令
执行部件EU——负责执行指令
从第二条指令开始,执行指令与取指令同时进行,重叠操作,程序运行速度明显提高。
二.
加法器
CPU结构(见P55)
1.总线接口部件BIU:
ALU数据总线
由16位段寄存器(CS、DS、ES、SS)与指令指针(IP)及地址加法器计算指令代码所在存储单元20位物理地址,从存储器取出代码,放入指令队列。
EU每从指令队列取走一字节代码,BIU又按上述地址计算从存储器取出下一字节按先进先出,后进后出的原则填入指令队列。
2.执行部件EU:
由运算器(ALU)完成对数据的加工处理。
运算器由加法器和寄存器组成。
寄存器分为:
Ø
4个16位通用寄存器
AX、BX、CX、DX,各可分成二个8位寄存器AH、AL等,主要用于存放数据。
4个16位主要用于存放地址的寄存器SI、DI、SP、BP。
标志寄存器PSW存放运行结果的状态。
(见P61)
CF——数据运算最高位的进(借)位。
PF——运算结果1的个数为偶时PF=1,为奇时PF=0。
AF——数据运算时,最低半字节向高半字节的进位(加法)或借位(减法)。
ZF——运算结果为零时ZF=1,非零时ZF=0。
SF——符号标志。
运算结果最高位为1(负数)时SF=1,为零(正数)时SF=0。
OF——溢出标志。
带符号数运算超出数值表示范围时,OF=1,否则OF=0。
8位二进制带符号数范围-128~+127(80H~FFH,0~7FH),16位带符号数范围-32768~+32767(8000H~FFFFH,0~7FFFH)。
DF——用于串操作指令。
IF——中断允许标志。
IF=1,允许可屏蔽中断源中断请求;
IF=0,禁止可屏蔽中断。
TF——单步标志。
用于己于人程序调试,单步执行指令。
1.8088/8086CPU内部的EU和BIU的作用分别是什么?
各有哪些主要寄存器?
2.执行指令MOVAL,78H后,(AL)、SF、AF、CE、ZF、OF、PF的内容分别是什么?
ADDAL,55H
3.么叫指令流水作业?
第二节8088/8086存储器组织
一.物理地址与逻辑地址
8088/8086CPU具20位地址线(A19~A0),可寻址1M(兆)存储空间。
8088/8086CPU内部寄存器字长16位,无法直接访问20位存储器地址。
处理办法:
1M(兆)字节存储空间分成若干64K字节的存储区域(称为逻辑段),由段寄存器(CS、DS、SS、ES)存放段的起始地址,称段基址;
访问内存时,通过段基址加偏移地址的方法形成被访单元地址。
偏移地址存放于:
指令指针IP、变址寄存器SI、DI,基址寄存器BX、BP。
地址形式为×
H:
H,冒号前为段基址,冒号后为偏移地址,统称逻辑地址。
物理地址与逻辑地址换算:
物理地址=段基址×
16+偏移地址
例如:
段基址=1234H,偏移地址=4455H,则物理地址为:
1234H×
10H+4455H=16795H
各逻辑段可完全分离,亦可部分重叠或全部重叠。
二.寄存器的使用
程序代码放在代码逻辑段,CS:
放代码段段基址;
IP:
欲取指令的偏移地址。
被处理数据放在数据段,附加数据段,由DS:
数据段、ES:
存附加数据段段基址;
由SI、DI、BX、BP放被访数据的偏移地址。
三.堆栈
- 配套讲稿:
如PPT文件的首页显示word图标,表示该PPT已包含配套word讲稿。双击word图标可打开word文档。
- 特殊限制:
部分文档作品中含有的国旗、国徽等图片,仅作为作品整体效果示例展示,禁止商用。设计者仅对作品中独创性部分享有著作权。
- 关 键 词:
- 微机 原理 教案