二进制和十六进制数的相互转换 理>二进制和十六进制数之间具有对应关系 ●以小数点为基准 术 整数从左向右,小数从右向左 每4个二进制位对应一个十六进制位 00111010B=3AH 械 FZH=11110010B 出
微 机 原 理 与 接 口 技 术 · 第 4 版 机 械 工 业 出 版 社 二进制和十六进制数的相互转换 ➢二进制和十六进制数之间具有对应关系 以小数点为基准 整数从左向右,小数从右向左 每4个二进制位对应一个十六进制位 00111010B=3AH F2H=11110010B
微机原 3.12数值的编码 骂>编码:用文字、符号或者数码来表示某种信息 (数值、语言、操作指令、状态等)的过程 >二进制编码:组合0和1数码 第机器数:计算机中用0和1数码组合表达的数值 真值:现实中真实的数值 数值的两种编码方式 出 定点格式(第3章) 浮点格式(第9章)
微 机 原 理 与 接 口 技 术 · 第 4 版 机 械 工 业 出 版 社 3.1.2 数值的编码 ➢编码:用文字、符号或者数码来表示某种信息 (数值、语言、操作指令、状态等)的过程 ➢二进制编码:组合0和1数码 ➢机器数:计算机中用0和1数码组合表达的数值 ➢真值:现实中真实的数值 ➢数值的两种编码方式 定点格式(第3章) 浮点格式(第9章)
1.定点整数 理>定点格式:固定小数点的位置表达数值 接 定点整数:小数点固定在机器数的最右侧 技 不>定点小数:小数点固定在机器数的最左侧 >无符号整数(无符号数) 版 机 只表达0和正整数的定点整数 感·N位无符号整数表达范围:0~2 >有符号整数(有符号数、带符号数) 版 社·表达负整数、0和正整数的定点整数 ●最高位表达数值正负 ●符号位用0表示正数、1表示负数 示意图
微 机 原 理 与 接 口 技 术 · 第 4 版 机 械 工 业 出 版 社 1. 定点整数 ➢定点格式:固定小数点的位置表达数值 ➢定点整数:小数点固定在机器数的最右侧 ➢定点小数:小数点固定在机器数的最左侧 ➢无符号整数(无符号数) 只表达0和正整数的定点整数 N位无符号整数表达范围:0~2 N ➢有符号整数(有符号数、带符号数) 表达负整数、0和正整数的定点整数 最高位表达数值正负 符号位用0表示正数、1表示负数 示意图
薇2.补码 粤>有符号整数在计算机中默认采用补码 接 最高位表示符号:正数用0,负数用1 技 术 正数补码:直接表示数值大小(同无符号数) 第 负数补码:将对应正数补码取反加1 版 [105]补码=01101001B 酸[-105】补码=[01100181取反+1 =10010110B+1=10010111B 出 版·8位二进制补码的数值范围:-128~+127 16位二进制补码的数值范围:-215~+215-1 32位二进制补码的数值范围:-231~+231-1 ●N位二进制补码的数值范围:21~+2N1-1
微 机 原 理 与 接 口 技 术 · 第 4 版 机 械 工 业 出 版 社 2. 补码 ➢有符号整数在计算机中默认采用补码 最高位表示符号:正数用0,负数用1 正数补码:直接表示数值大小(同无符号数) 负数补码:将对应正数补码取反加1 [105]补码=01101001B [-105]补码=[01101001B]取反+1 =10010110B+1=10010111B 8位二进制补码的数值范围:-128~+127 16位二进制补码的数值范围:-2 15~+2 15-1 32位二进制补码的数值范围:-2 31~+2 31-1 N位二进制补码的数值范围:-2 N-1~+2 N-1-1
微机原 负数求补 骂>负数真值“取反加1”得机器数补码 接 负数补码“取反加1”得到负数真值 技 术 补码:11100000B 第 4 真值:-([1110000 求反+1 )=-(00011111+1) 版 -00100000=-25=-32 酸负数求补运算,等效于用带借位的作减法 业 出 真值:-8,补码:[-8补码=00H08H=F8H 版 社 补码:1111000真值:-(00HF8H=-08H=-8 +8=00001000 11110111 0=00000000 (8=00001000) 8 11111000 8 11111000
微 机 原 理 与 接 口 技 术 · 第 4 版 机 械 工 业 出 版 社 负数求补 ➢负数真值“取反加1”得机器数补码 ➢负数补码“取反加1”得到负数真值 补码:11100000B 真值:-([11100000]求反+1)=-(00011111+1) =-00100000=-2 5=-32 ➢负数求补运算,等效于用带借位的0作减法 真值:-8,补码:[-8]补码=00H-08H=F8H 补码:11111000,真值:-(00H-F8H)=-08H=-8 +8 = 00001000 11110111 + 1 -8 = 11111000 0 = 00000000 -(8= 00001000) -8 = 11111000