大学计算机基础-课件资料-华南理工大学-(2)

整理文档很辛苦,赏杯茶钱您下走!

免费阅读已结束,点击下载阅读编辑剩下 ...

阅读已结束,您可以下载文档离线阅读编辑

资源描述

数制的表示和运算大学计算机基础内容摘要1.进位计数制表示及互相转换2.计算机中数值数据表示方法3.算术运算及逻辑运算4.计算机中非数值数据表示方法5.数据校验编码2华南理工大学计算机教学团队进位计数制表示•“进位计数制”是一种数量大小表示方法•在R进位计数制系统中,R通常称为该计数制的基数。该计数制的进位规则为“逢R进1”。小数点左边每个数字位的权重依次为R0,R1,R2等,小数点右边每个数字位的权重依次为R-1,R-2,R-3。•常用的进位计数制有十进制、二进制、十六进制、八进制3华南理工大学计算机教学团队基数权重展开公式•R进制中某个数a若表示为(aiai-1…a1a0)R,则该数的真值大小为:a=(aiai-1…a1a0)R=ai×Ri+ai-1×Ri-1+…+a1×R1+a0×R0=•该公式称为基数权重展开公式,它是求一个R进制数真值常用方法。ikkkRa04华南理工大学计算机教学团队十进制•十进制是我们最熟悉的进位计数制系统。基数:10;进位规则:“逢10进1”;数元:0,1,2,3,4,5,6,7,8,9每个数位权重:10i。•例:(953.78)10=9×102+5×101+3×100+7×10-1+8×10-2•在一个数字的右下角标注一个10或D表示这是一个十进制数5华南理工大学计算机教学团队5华南理工大学计算机教学团队二进制•二进制是计算机中使用最普遍的进位计数制系统。基数:2;进位规则:“逢2进1”;数元:0,1;每个数位权重:2i。•例:(110.01)2=1×22+1×21+0×20+0×2-1+1×2-2=(6.25)10•在一个数字的右下角标注一个2或B表示这是一个二进制数6华南理工大学计算机教学团队6华南理工大学计算机教学团队八进制•八进制基数:8;进位规则:“逢8进1”;数元:0,1,2,3,4,5,6,7;每个数位权重:8i。•例:(15.1)8=1×81+5×80+1×8-1=(13.125)10•在一个数字的右下角标注一个8或O表示这是一个八进制数77华南理工大学计算机教学团队十六进制•十六进制基数:16;进位规则:“逢16进1”;数元:0,1,2,3,4,5,6,7,8,9,A,B,C,D,E,F;每个数位权重:8i。•例:(15.1)16=1×161+5×160+1×16-1=(21.0625)10•在一个数字的右下角标注一个16或H表示这是一个十六进制数88华南理工大学计算机教学团队计算机常用计数制9进位计数制十进制二进制八进制十六进制数元0,1,2…90,10,1,2…70,1…9,A,B,C,D,E,F基数102816权重10i2i8i16i标识10或D或不写2或B8或O16或H例子(123)10(110)2(177)8(1AF)169华南理工大学计算机教学团队计数制对照关系表10十进制二进制八进制十六进制00000001000111200102230011334010044501015560110667011177810001089100111910101012A11101113B12110014C13110115D14111016E15111117F10华南理工大学计算机教学团队R进制数转换为十进制方法•将一个R进制数转换为十进制,只需要按照基数权重展开式展开,再相乘相加即可得到转换结果。•例子:(11011)2=1×24+1×23+0×22+1×21+1×20=(27)10(177)8=1×82+7×81+7×80=(127)10(1AF)16=1×162+10×161+15×160=(431)101111华南理工大学计算机教学团队十进制转换为R进制数•将十进制数转换为R进制数,需要对整数部分和小数部分别转换。•整数部分转换的方法是除R取余法。小数部分转换的方法是乘R取整法。•最后将两部分结果合并起来即可最终结果。1212华南理工大学计算机教学团队十进制转R进制例子•例1:将十进制数82转换为二进制82/2=41,余0(最低位)产生041/2=20,余11020/2=10,余001010/2=5,余000105/2=2,余1100102/2=1,余00100101/2=0,余1(最高位)1010010•所以(82)10=(1010010)21313华南理工大学计算机教学团队十进制转R进制例子•例2:将十进制数300转换为十六进制300/16=18,余12(最低位)产生C18/16=1,余22C1/16=0,余1(最高位)12C所以(300)10=(12C)16•例3:将十进制数13.625转换为二进制整数部分13用除2取余法转换的结果是1101,对小数部分0.625用乘2取整法转换。0.625×2=1.25整数为:1(小数部分最高位)小数为:0.250.25×2=0.50整数为:0小数为:0.500.50×2=1.00整数为:1(小数部分最低位)小数为:0.00所以(0.625)10=(0.101)2,(13.625)10=(1101.101)21414华南理工大学计算机教学团队二进制与八进制转换•将一个二进制数转换为八进制数,只需要将该二进制数以小数点为界,每三位二进制位转换为一个八进制数即可。15二进制000001010011100101110111八进制0123456715华南理工大学计算机教学团队二进制与十六进制转换•将一个二进制数转换为十六进制数,只需要将该二进制数以小数点为界,每四位二进制位转换为一个十六进制数即可。16二进制00000001001000110100010101100111十六进制01234567二进制10001001101010111100110111101111十六进制89ABCDEF16华南理工大学计算机教学团队二进制与八、十六进制转换例子•例1:将二进制数(1101110.001)2转换为八进制和十六进制(1101110.001)2=(001101110.001)2=(156.1)8156.1(1101110.001)2=(01101110.0010)2=(6E.2)166E.2所以(1101110.001)2=(156.1)8=(6E.2)16•例2:将(175.2)8和(6AB.4)16转换为二进制(175.2)8=(001111101.010)2=(111101.01)2(6AB.4)16=(011010101011.0100)2=(11010101011.01)2所以(175.2)8=(111101.01)2,(6AB.4)16=(111101.01)217华南理工大学计算机公共基础教研室17华南理工大学计算机教学团队进位计数制表示•“进位计数制”是一种数量大小表示方法•在R进位计数制系统中,R通常称为该计数制的基数。该计数制的进位规则为“逢R进1”。小数点左边每个数字位的权重依次为R0,R1,R2等,小数点右边每个数字位的权重依次为R-1,R-2,R-3。•常用的进位计数制有十进制、二进制、十六进制、八进制1818华南理工大学计算机教学团队计算机中数值数据表示•各种数值型数据在计算机中都以一串一定长度的二进制数串来表示、存储和运算。•该二进制数串称为该数值型数据的机器数,而该二进制数串对应的数值型数据的大小称为其真值。•常用的数值型数据表示方法:原码、反码、补码、移码1919华南理工大学计算机教学团队原码表示法•原码机器数表示:最高1位为符号位,其余位为数值位。•符号位:0表示正数,1表示负数。•数值位用该整数的绝对值的二进制格式填充。•通常用[X]原表示X的原码。[+0]原=00000000,[1]原=00000001,[2]原=00000010,…,[127]原=01111111,[-0]原=10000000,[-1]原=10000001,[-2]原=10000010,…,[-127]原=111111112020华南理工大学计算机教学团队原码特点•0的原码表示不唯一•加减运算难实现,乘除运算容易实现。•原码表示法通常在CPU中的浮点数运算器中使用。•若机器字长为n,则采原码可以表示的数据真值范围为-2n-1+1≦N≦2n-1-1。•若机器字长为8位,则原码可表示的真值范围是-127到127之间2121华南理工大学计算机教学团队反码表示法•反码机器数表示:最高1位为符号位,其余位为数值位。•符号位:0表示正数,1表示负数。•正数数值位同原码数值位相同,负数用原码数值位中每位取反的结果填充。•通常用[X]反表示X的反码。[+0]反=00000000,[1]反=00000001,[2]反=00000010,…,[127]反=01111111,[-0]反=11111111,[-1]反=11111110,[-2]反=11111101,…,[-127]反=10000000,2222华南理工大学计算机教学团队反码特点•0的反码表示不唯一•加减乘除运算难实现,在计算机中很少采用。•若机器字长为n,则反码可以表示的数据真值范围为-2n-1+1≦N≦2n-1-1。•若机器字长为8位,则反码可表示的真值范围是-127到127之间2323华南理工大学计算机教学团队补码表示•补码机器数表示:最高1位为符号位,其余位为数值位。•符号位:0表示正数,1表示负数。•正数数值位同原码数值位相同,负数用原码数值位中每位取反再未位加1的结果填充。•通常用[X]补表示X的补码。[+0]补=00000000,[1]补=00000001,[2]补=00000010,…,[127]补=01111111,[-0]补=00000000,[-1]补=11111111,[-2]补=11111110,…,[-127]补=10000001,[-128]补=100000002424华南理工大学计算机教学团队补码特点•0的补码表示唯一:00…0•加减乘除运算容易实现,在计算机中大量采用,整数存储和运算全采用补码。•若机器字长为n,则补码可以表示的数据真值范围为-2n-1≦N≦2n-1-1,负数比正数多表示一个•若机器字长为8位,则补码可表示的真值范围是-128到127之间2525华南理工大学计算机教学团队移码表示•移码机器数表示:最高1位为符号位,其余位为数值位。•符号位:1表示正数,0表示负数。•数值位和该数补码数值位相同。•通常用[X]移表示X的移码。[+0]移=10000000,[1]移=10000001,[2]移=10000010,…,[127]移=11111111,[-0]移=10000000,[-1]移=01111111,[-2]移=01111110,…,[-127]移=00000001,[-128]移=000000002626华南理工大学计算机教学团队移码特点•0的移码表示唯一:10…0•容易比较两数大小,在计算机中通常用于表示浮点数的指数。•若机器字长为n,则移码可以表示的数据真值范围为-2n-1≦N≦2n-1-1,负数比正数多表示一个。•若机器字长为8位,则移码可表示的真值范围是-128到127之间2727华南理工大学计算机教学团队原码反码补码移码对照表28真值原码表示反码表示补码表示移码表示1270111111101111111011111111111111112601111110011111100111111011111110100000001000000010000000110000001+000000000000000000000000010000000-010000000111111110000000010000000-110000001111111101111111101111111-12711111111100000001000000100000001-128无法表示无法表示100000000000000028华南理工大学计算机教学团队浮点数表示法•浮点数即机器数表示中小数点位置不固定的数,通常既有整数部分又有小数部分的数据都用浮点数格式表示。•任何数N都可以表示为指数形式:N=2E×S其中E是一个二进制整数,称为N的阶码,也称为

1 / 64
下载文档,编辑使用

©2015-2020 m.777doc.com 三七文档.

备案号:鲁ICP备2024069028号-1 客服联系 QQ:2149211541

×
保存成功