微机原理及应用(第五版)

合集下载
  1. 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
  2. 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
  3. 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。

计算机中是用2n为模—2补码.
[X]补=2n+X
微机ห้องสมุดไป่ตู้理及应用
若以2n-1为模的补码称1补码----反码
[X]反=2n-1+X
根据上面的公式得:
X为正时: [X]反=[X]补=[X]原 X为负时:求[X]补是将[X]原的符号位不变,其余各位
变反加1.
求[X]反是将[X]原的符号位不变,其余各位
变反. 微机原理及应用
• 无符号数. 加法:结果必为正.只要不溢出(最高位没有 进位)结果就是正确的. 减法:补码运算结果有进位结果为正.否 则为负.
• 有符号数.加减法结果看符号位.是否溢
出用下述方法判别.
微机原理及应用
5.有符号数加减运算溢出判别
采用双高位判别法.在计算机内设置两个进位位分别是:
• CS:表示符号位向前进位情况.如有进位CS=1,否 则CS=0.
微机原理及应用
3.带符号数的运算
• 原码:类似于正负数的笔算 优点:直观. 缺点:减法过程非常繁锁. 适用:浮点数的有效数字. 二进制乘除法.
• 补码:优点:符号位和数值一起运算; 减法可以变成加法运算.
缺点:数值比较大小时易出错. 适用:加减法的运算中.
微机原理及应用
运算公式:[x+y]补=[x]补+[+y]补
补码没有+0和-0之分;反码有+0和-0之分
[+0]补=00…..00=0 [-0]补=00…..00=0 [+0]反=00…..00=0 [-0]反=00…..00=111…..11
例如:X=+1010011B
[X]反=[X]补=[X]原=01010011 X=-1010011B
[X]原=11010011 [X]补=10101101 [X]反=10101100
微机原理及应用
例1.1用补码运算:①129-79 ②79-129
解: ①.设x=129,y=79则 [x]补=10000001B,[y]补=01001111B
[-y]补=[y]变补=10110001B [x-y]补=[x]补+[-y]补=00110010B 最高位有进位,
结果为正[x-y]补= [x-y]原=00110010B x-y=50
其中:|x|,|y|,|x+y|<2n-1 [-y]补=[y]变补
[y]变补就是将[y]补连同符号位一起各位变反加1.
• 反码:常用在求反逻辑运算中,其它运算不用. • 移码:优点:能很方便的比较出真值的大小.
适用:A/D和D/A转换器的双极性编码. 浮点数的阶码中.
微机原理及应用
4.无符号数运算(补码运算)
• CP:表示数值部分最高位向符号进位情况,如有进位CP=1, 否则CP=0.
分析: CS CP 00 01 10 11
溢出情况 无溢出 正溢出 负溢出 无溢出
微机原理及应用
例1.2 01011010B +90 + 01101011B +107
11000101B 197 CS =0 CP =1 是正溢出
微机原理及应用
多字节数据的存储情况
例如字1234和双字3C5D7E9F的存储
地址 m+2 m+1 m m -1
×× 12 34 ××
(a) 字的存储
地址 m+4 m+3 m+2 m+1 m
×× 3C 5D
7E 9F
m-1 × ×
(b) 双字的存储
微机原理及应用
1.1.2 数的进位制表示约定
• 二进制:数的后面加后缀B. • 十进制:数的后面加后缀D或不加. • 十六进制:数的后面加后缀H.
[-0]原=10000000 综上述
[X]原={
X 2n-1-X
X为正 X为负
微机原理及应用
2).补码和反码
举一实例:3点钟-7小时=8时
3点钟+5小时=8时
即:3-7=3+5
为什么?
答:时钟是以12为模,5是-7的补码.
在计算机中采用补码主要原因有二,一是 可以将减法变成加法来运算.二是补码的符号 位可以参加运算.
微型计算机原理
• 第一章 微型计算机基础知识 • 第二章 微型计算机组成及微处理器功能结构 • 第三章 80X86寻址方式和指令系统 • 第四章 汇编语言程序设计 • 第六章 半导体存储器及接口 • 第八章 中断和异常 • 第九章 输入/输出方法及常用的接口电路
第一章 微型计算机基础知识
常用数据类型 数学协处理器的数据格式
[x]补+[+y]补= [x+y]补 其中:x、y及(x+y)<2n • 加法:最高位没有进位.就有正确结果,并 为正. • 减法:1).若x>=y, [x]补+[-y]补最高位有 进位,结果为正. [x-y]补=[x-y]原
2).若x<y, [x]补+[-y]补最高位无进 位,结果为负.将[x-y]补再求一次补前边 加上负号就得到x-y的真值.
微机原理及应用
1.1.1 数据在内存储器中的存储方式
字节:8个二进制位.一个字节也叫做一个存 储单元.
地址:对内存中存储单元的编号.从0开始直 到CPU能支持的最高地址.
字:相邻两个字节存放一个数.16位. 双字:相邻四个字节存放一个数.32位.
多字节数据的存储采取高位字节在高地址 的原则.数据所在地址是低字节所在的地址.
微机原理及应用
3).移码
针对补码不易比较大小的缺点而出现了移码
[X]移= 2n-1 -1+X 2n-1-1为偏移量
X>-2n-1 且X<=2n-1
例如:X=+10010B=+18,Y=-10010B=-18
[X]移= 26-1 -1+X=011111+010010=110001B [Y]移= 26-1 -1+Y=011111-010010=001101B
②.设x=79,y=129则 [x]补=01001111B,[y]补=10000001B
[-y]补=[y]变补=01111111B [x-y]补=[x]补+[-y]补=11001110B 最高位无进位,
结果为负 x-y=-50 微机原理及应用
总结:对于无符号数和有符号数的补码运算,计算 机运算的方法都是一样的.只是结果判断正负的方 法不同.
微机原理及应用
1.1.3 整数
1.无符号数
8、16、32位全部用来表示数值本身。
最低位LSB是0位,最高位MSB是7、15、31。
2.带符号整数
1).原码: 设X=+1011100B,Y=-1011100B
此时X和Y被称为真值.
则[X]原=01011100,[Y]原=11011100
而[+0]原=00000000,
相关文档
最新文档