版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领
文档简介
第二节微型计算机的运算基础1.2.1无符号数的表示方法1.2.2有符号数的表示方法1.2.3数的定点表示与浮点表示1.2.4计算机中的编码1.2.1无符号数的表示方法一、数与数制二、不同数制之间的转换
(一)、进位计数制及其要素: 进位计数制:按进位原则进行计数的方法。例:十进制数有: 0、1、2、3、4、5、6、7、8、9十种状态。我们说:十进制数基数10,变化范围0~9,逢十进一。看一个十进制数: 4094 每一位十种数码的状态(0~9) 千百十个 本位绝对值的大小=数×位权 103102101100如:千位=4×103=4000一、数与数制十进制数(D)有二个要素:1.基数:十 每一位0、1、2、3、4、5、6、7、8、9 (逢十进一)。2.位权:10i
某一位数绝对值大小=数×位权. 二个要素:适用于二、八、十六进制。
二进制数(B):基数2位权2i
八进制数(Q):基数8位权8i
十六进制数(H):基数16位权16i(二)、进位计数制的表示方法:
1234.56D=1
103+2
102+3
101+4
100+5
10-1+6
10-2推广到一般形式(任意十进制):
N=±[kn
10n+kn-1
10n-1+……+k0
100
+k-1
10-1+……+k-m
10-m] =±
[ki
10i] (i=-m~n)任何某一位数大小=ki
10i对于任意进制:
N=±
[ki
Ri] (i=-m~n) R—基数,逢R进一.Ri—位权例如:二进制数X=10011101B X=1
27+1
24+1
23+1
22+1
20=(157)10
在计算机里进行运算和处理均是按二进制数处理的。而二进制数写起来麻烦;教材有时又以八进制或十六进制表示;日常生活中又常用十进制,因此就有:二
十 八
十 二
八数制之间转换问题 十六
十 二
十六整数十→二(除2取余法)方法:
整数除2取余,直到商为0为止,读数由后向前。例:(217)10=kn
2n+kn-1
2n-1+……k1
21+k0
20 =2(kn
2n-1+kn-1
2n-2+……+k1
20)+k02(kn
2n-1+kn-1
2n-2+……+k1
20)是2的倍数, k0
是余数.二、不同数制之间的转换
(一)十
二(217)10÷2----得到余数k0
余数:按照相反的方向写下来。/2/2/2/2/2/2/2/2217
108
54
27
13
6
3
1
0----商
10011011----余数(217) 10=(11011001)2小数十→二:乘2取整方法:对十进制数逐次乘2, 小数点前边系数为系数ki。即乘2取整法,位数取决于要求精度。例:(0.613)10
2=1.226k-1=1(0.226)10
2=0.452k-2=0(0.452)10
2=0.904k-3=0(0.904)10
2=1.808k-4=1(0.1001)2=(0.5625)10(0.808)10
2=1.616k-5=1(0.10011)2=(0.609375)10(0.616)10
2=1.232k-6=1(0.100111)2=(0.625)10(0.613)10=(0.1001)2k-7=0
既有整数又有小数部分的,可分别转换,再组合起来。见教材P143. 二→十
同样可以用公式进行例:(0.1001)2=1
2-1+1
2-4=0.5+0.0625=(0.5625)10(1001)2=1
23+0
22+0
21+1
20=(9)10
*下面看一下常用的几种数制写法:八位二进制数
十进制二进制八进制十六进制BCD
00 0 0 0 1 01 1 1 1 2 10 2 2 10 3 11 3 3 11 4 100 4 4 100 5 101 5 5 101 6 110 6 6 110 7 111 7 7 111 8 1000 10
8 1000 9 1001 11 9 1001
10 1010 12 A
10000 11 1011 13 B 10001 12 1100 14 C 10010 13 1101 15 D 10011 14 1110 16 E 10100 15 1111 17 F 10101 16 10000 20 10 10110 。 。 。 11 。 。 。 。 12 。 。 。 。 。 。(255)D 11111111B 377O(Q) FFH (10,0101,0101)BCD1、 二
八
二→
八:
以小数点为界向左向右三位一段,不够补0, 三位二进制数用一位八进制数表示。例:(1,101,001.010,011,1)2
不够补0
不够补0(001101001.010011
100)2=(151.234)8
八→二:
一位八进制数用三位二进制数表示。(151.234)8=(001101001.010011100)2(二) 二
八,二
十六,二
BCD之间转换
二→十六: 以小数点为界向左向右四位一段,不够补0,
四位二进制数用一位十六进制数表示。例:(1101001.0100111)2→(69.4E)16
不够补0
不够补0 (0110,1001.0100,1110)2=(69.4E)16
十六→二:一位十六进制数用四位二进制数表示。例:(69.4E)16
=
(0110,1001.0100,1110)22、二
十六BCD数:常用8421码,每一位十进制数用四位二进制编码表示。1111B 9D 1001BCD 10D00010000BCD
BCD码与二进制数之间转换没有直接关系, 必须先转换成十进制,然后转换成二进制。例:1111111B=255D=0010,0101,0101BCD 0010,0101,0101BCD=255D=11111111B3、 二
BCD1、机器数与真值数据的正负号可以用一位二进制的“0”和“1”来表示。常用的二进制数值数据编码有原码、反码和补码。由于补码由许多优点,大多数微机采用补码进行编码。
什么是机器数与真值?机器数:带符号的二进制数值数据在计算机内部的编码。机器数的最高有效位是符号位:0——正数1——负数真值:机器数所代表的实际值。1.2.2有符号数的表示方法例:
机器数与真值
N1=+1011011N2=-1011011为真值=01011011 =11011011为机器数例:符号怎么表示?对于字长8位机器数:
D7为符号位:0表示“+”,1表示“-”。符号数码化了。
D6~D0为数字位。如:X=(01011011)2=+91X=(11011011)2=-91
符号数码化了,对数据进行运算时,符号位应如何处理?把符号位和数值位一起编码:原码,反码,补码。
正数符号位用“0”表示,负数符号用“1”表示;绝对值的编码规则与无符号数编码规则相同,这种表示法称为原码。
X=+105[X]原=01101001
X=-105[X]原=11101001
符号数值
2、原码原码的特点:
(1)最高位为符号位,正数为0,负数为1;(2)8位二机制原码表示的范围为-127~+127;16位二机制原码表示的范围为-32767~+32767;(3)0的原码有两种表示方法,即+0和-0,若字长为8位:[+0]原
=00000000B[-0]原
=10000000B
正数反码表示与原码相同,最高位“0”表示正,其余位为数值位。
负数反码表示为负数原码的符号位不变,尾数按位取反。例: [+4]反=0 0000100 [-4]反=1 1111011 [+127]反=0 1111111 [-127]反=10000000 [+0]反=00000000 [-0]反=111111113、反码
反码的特点:
(1)最高位仍为符号位,正数为0,负数为1;(2)8位二机制反码表示的范围为-127~+127;16位二机制反码表示的范围为-32767~+32767;(3)0的原码有两种表示方法,若字长为8位:[+0]反=00000000B[-0]反=11111111B(4)正数的反码与原码相同。
正数的补码表示与原码相同,最高位用“0”表示正,其余位为数值位。
负数的补码表示为它的反码+1。(也可从定义出发求补码,当X<0时,[X]补=2n-|X|,mod2n) [+127]原=01111111[+0]原=00000000 [-127]反=10000000[-0]反=11111111 [-127]补=10000001[-0]补=000000004、补码
补码的特点:(1)最高位仍为符号位,正数为0,负数为1;(2)8位二机制补码表示的范围为-127~+127;16位二机制补码表示的范围为-32767~+32767;(3)0的补码有一种表示方法,即[+0]补=[-0]补(4)对于8位二机制数10000000,在补码中的定义为[-128],在原码中的定义为=[-0],在反码中的定义为[-127]。三种码制之间关系及特点:正数:原,反,补相同负数:原,反,补不同,但最高位为1。负数: 原→反,符号位不变,尾数按位求反 原→补,符号位不变,尾数按位求反+1 补→原,符号位不变,尾数求反+1 反→原,符号位不变,尾数求反.小结:说明:1)、原码表示法简单,易于理解,与真值转换方便,但加减运算时麻烦,故引进反码和补码。2)、数0的原码和反码有两种表示形式,而补码表示法中,0只有一种表示形式。
“0”的表示原码 反码 补码[+0]原=000…00 [+0]反=000…00 [+0]补=000…00[-0]原=100…00 [-0]反=111…11 [-0]补=000…003)8位二进制数的表示范围: 无符号数:0~255 原码:-127~+127 反码:-127~+127 补码:-128~+127已知补码求真值:补码的补码即为真值。例:[X]补=11111111,则X=[[X]补]补=10000001=(-1)10[(-1)10]补=11111111二进制数补码的运算补码的运算规则是:
[X+Y]补=[X]补+[Y]补[X-Y]补=[X]补+[-Y]补设 X1=+0001100X2=-0001100Y1=+0000101Y2=-0000101则 [X1]补=00001100 [X2]补=11110100[Y1]补=00000101 [Y2]补=11111011【例1-19】①计算X1+Y1。(两正数相加)
+0001100X1 00001100 [X1]补+)+0000101Y1 +)00000101 [Y1]补+0010001X1+Y1 00010001 [X1]补+[Y1]补因为:[X1+Y1]补=[+0010001]补=00010001=[X1]补+[Y1]补所以:[X1+Y1]补=[X1]补+[Y1]补②计算X1-Y1。(两正数相减)
+0001100 X1 00001100 [X1]补-)+0000101 Y1 +)11111011 [-Y1]补
+0000111 X1-Y1100000111 [X1]补+[-Y1]补自然丢失因为:[X1-Y1]补=[+0000111]补=00000111B=[X1]补+[-Y1]补所以:
[X1-Y1]补=[X1]补+[-Y1]补③计算X2+Y2。(两负数相加)-0001100 X2 11110100 [X2]补+)-0000101 Y2 +)11111011 [Y2]补
-0010001 X2+Y2 111101111 [X2]补+[Y2]补自然丢失因为:[X2+Y2]补=[-0010001]补=11101111B=[X2]补+[Y2]补所以:[X2+Y2]补=[X2]补+[Y2]补④计算X2-Y2。(两负数相减)-0001100 X2 11110100 [X2]补-)-0000101 Y2 +) 00000101 [-Y2]补
-0000111 X2-Y2 11111001 [X2]补+[-Y2]补因为:[X2-Y2]补=[-0000111]补=11111001B=[X2]补+[-Y2]补所以:[X2-Y2]补=[X2]补+[-Y2]补计算机引入了补码编码后,带来了以下几个优点:(1)减法转化成了加法,这样大大简化了运算器硬件电路的设计,加减法可用同一硬件电路进行处理。(2)运算时,符号位与数值位同等对待,都按二进制数参加运算,符号位产生的进位丢掉不管,其结果是正确的。这大大简化了运算规则。结论:[-Y]补怎么求?思考:变补(求负)的概念:已知[Y]补求[-Y]补的过程。方法:对[Y]补的每位按位取反(包括符号位),然后加1,即为[-Y]补。例:[+87]补=01010111B[-87]补=10101001B采用补码运算后结果是怎样的?补码运算的结果也是补码!欲得真值,还需转换运算时数的溢出问题
假设机器字长为n位,则有符号整数(一般为补码)表示的范围是:-2n-1≤X≤2n-1-1无符号整数表示的范围是:0≤X≤2n-1例:当n=8时,数的范围分别是:-128~+127(有符号)0~255(无符号)*运算时数如果超出了范围则称为溢出,发生溢出的情况有:1)同号数相加2)异号数相减利用双进位方法判断有无溢出是一种常用的方法,他的规则是:(1)如果次高位向最高位有进位
(或借位)
,而最高位向前无进位(或借位)则结果发生溢出;(2)如果次高位向最高位无进位(或借位),而最高位向前有进位(或借位)则结果发生溢出;例:已知
X=-1111111B,Y=-
0000010B[X]补=10000001B=[-127]补[Y]补=11111110B=[-2]补[X]补+[Y]补=101111111B=+127D自然丢失例:已知
X=01000000B,Y=01000010B[X]补=01000000B=[+64]补[Y]补=01000010B=[+66
]补[X]补+[Y]补=100000010B=-2D在计算机中涉及小数点位置时,常用的数据表示个是由两种,即定点表示法和浮点表示法。定点就是实现约定好小数点位置;而浮点表示则是小数点的位置是浮动的。(1)定点表示任何一个二进指数都可以表示成一个纯整数或纯小数与一个2的整数次幂的乘积的形式N=2P×S;其中,S表示了N的全部有效数字,称为N的尾数;P称为N的阶码;2称为阶码的底。1.2.3数的定点表示与浮点表示符号二进制数数符尾数为S的纯小数小数点在最低位后符号二进制数数符尾数为S的纯小数小数点在最低位后定点整数:定点小数:例:用8位原码表示定点整数100D100D=1100100B定点整数表示为:(2)浮点表示浮点数是小数点的位置可以变动的数。类似于十进制中的科学计数法。N=S×2P;其中,S称为浮点数的尾数,表示规格化后的小数值;
温馨提示
- 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
- 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
- 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
- 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
- 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
- 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
- 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。
最新文档
- GB/T 4928-2026啤酒分析方法
- 酒精蒸馏工岗前绩效目标考核试卷含答案
- 电动自行车装配工保密意识考核试卷含答案
- 井下出矿工安全生产知识评优考核试卷含答案
- 电子绝缘材料上胶工保密意识能力考核试卷含答案
- 桥面铺装质量培训课件
- 银行合规披露制度
- 酒店客房销售与收益最大化制度
- 酒店餐饮成本控制制度
- 年产200万平方米柔性电子元器件项目可行性研究报告模板-备案审批
- (2025年标准)圈内认主协议书
- 2025年安徽省中考化学真题及答案
- 2025年军队文职人员统一招聘面试( 临床医学)题库附答案
- 海马体核磁扫描课件
- 某电力股份企业同热三期2×100万千瓦项目环评报告书
- 2026届上海市部分区中考一模语文试题含解析
- 中科大人类生态学课件2.0 地球·环境与人
- 数学 2024-2025学年人教版七年级数学下册期末+试卷
- 高中英语必背3500单词表完整版
- 急诊成人社区获得性肺炎临床实践指南(2024 年版)解读
- 青年教师培训:AI赋能教育的创新与实践
评论
0/150
提交评论