大家好,欢迎来到IT知识分享网。
计算机系统基础知识之数据表示
1、综述
各种数值在计算机中表示的形式称为机器数,其特点是采用二进制计数值,数的符号用0和1表示,小数点则隐含,表示不占位置。机器数对应的实际数值称为数的真值。
机器数有无符号数和带符号数之分。无符号数表示正数,在机器数中没有符号位。对于无符号数,若约定小数点的位置在机器数的最低位之后,则是纯整数;若约定小数点的位置在机器数的最高位之前,则是纯小数。对于带符号数,机器数的最高位是表示正、负的符号位,其余位则表示数值。
为了便于运算,带符号的机器数可采用原码、反码和补码等不同的编码方法,机器数的这些编码方法称为码制。
2、原码、反码、补码和移码
2.1、原码表示法
数值X的原码记为[X]原,如果机器字长为n(即采用n个二进制位表示数据),则原码的定义如下:
若X是纯整数,则:
(1) 0 ≤ X ≤ 2n-1 – 1 时, [X]原 = X
(2) -(2n-1 – 1) ≤ X ≤ 0 时, [X]原 = 2n-1+|X|
若X是纯小数,则:
(1) 0 ≤ X < 1 时, [X]原 = X
(2) -1 < X ≤ 0 时, [X]原 = 20+|X|
【例 1.1】 若机器字长 n 等于 8,分别给出 +1,-1,+127,-127,+45,-45,+0.5,-0.5 的原码表示。
[+1]原 = 0 0000001 [-1]原 = 1 0000001
[+127]原 = 0 [-127]原 = 1
[+45]原 = 0 0 [-45]原 = 1 0
[+0.5]原 = 0 ♢ [-0.5]原 = 1 ♢ (其中,♢ 表示小数点的位置)
在原码表示法中,最高位是符号位,0 表示正号,1表示符号,其余的n-1位表示数值的绝对值。数值0的原码表示有两种形式:[+0]原 = 0 0000000,[-0]原 = 1 0000000。
2.2、反码表示法
数值X的反码记为[X]反,如果机器字长为n,则反码的定义如下:
若X是纯整数,则:
(1) 0 ≤ X ≤ 2n-1 – 1 时, [X]反 = X
(2) -(2n-1 – 1) ≤ X ≤ 0 时, [X]反 = 2n -1 + X
若X是纯小数,则:
(1) 0 ≤ X < 1时, [X]反 = X
(2) -1 < X ≤0 时, [X]反 = 2 – 2-(n-1)+ X
【例 1.2】 若机器字长 n 等于 8,分别给出 +1,-1,+127,-127,+45,-45,+0.5,-0.5 的反码表示。
[+1]反 = 0 0000001 [-1]反 = 1
[+127]反 = 0 [-127]
免责声明:本站所有文章内容,图片,视频等均是来源于用户投稿和互联网及文摘转载整编而成,不代表本站观点,不承担相关法律责任。其著作权各归其原作者或其出版社所有。如发现本站有涉嫌抄袭侵权/违法违规的内容,侵犯到您的权益,请在线联系站长,一经查实,本站将立刻删除。 本文来自网络,若有侵权,请联系删除,如若转载,请注明出处:https://haidsoft.com/133715.html