目录
数制转换:
十进制数转为非十进制数:
整数部分:原数除以基数取余数倒写
小数部分:乘以2取整正写
二、八、十六进制数之间的转换:
根据所需情况分组转换,以二进制为中间桥梁比较方便
数及字符的表示:
机器数**: 一个二进制数连同符号位在内作为一个数叫机器数**
真值**:机器数所代表的数值(如****-1001011B****)**
原码**:正数、负数的符号位分别用0和1表示,这种表示法称为****原码**
**8位二进制原码表示数的范围:**1111,1111B ~ 0111 1111B 即 -127 ~ +127
0有+0**,****-0**
例:设机器字长为8位,二进制数**+10010B和-100001B**
其原码为:00010010**,10100001**
反码:对于二进制正数**,反码等于该数原码**
对于二进制负数,符号位为1,其余各位取反
8位二进制反码表示数的范围:1000 0000B ~ 0111 1111B 即: -127 ~ +127
0有+0**,****-0**
例:设机器字长为8位,二进制数**+1100101和-1010001**
其反码为:01100101**,10101110**
补码:对于二进制正数**,补码等于该数原码**
对于二进制负数,符号位为1,其余各位取反,末位加****1
8位二进制补码表示数的范围:1000 0000B ~ 0111 1111B 即: -128 ~ +127
只有一个****0
例:设机器字长为8位,二进制数**+1100101和-1010001**
其补码为:01100101**,10101111**
二进制数的加减运算:
由于计算机中的运算为模运算,所以用补码表示的数可以直接参加加减运算。
**[X+Y]补=[X]补+[Y]**补
[X-Y]补=[X]补+ [-Y]补
无符号数的运算:
全转化为补码进行相加再由补码还原回来
带符号数运算中的溢出问题:
两个带符号二进制数相加或相减时,若
C7+C6=1,则结果产生溢出;
C7+C6=0,则结果产生不溢出。(都为1或都为0***)***
C7为最高位的进**(借)位;C6为次高位的进****(借)**位。
最高位或者次高位单有一个进位时溢出
计算机中常用的编码:
十进制数的表示**------BCD****码:**
压缩BCD码和非压缩BCD码。压缩BCD码的每一位用4位二进制表示,0000~1001表示0~9,一个字节表示两位十进制数。
非压缩BCD码用一个字节表示一位十进制数,高4位总是0000,低4位的0000~1001表示0~9
字符的编码**------ASCII****码:**
•用8位二进制数表示一个字符,最高位为0。
•数字0~9编码为 30H ~39H
•字母A ~Z编码为41H~5AH
•字母a ~z编码为 61H ~7AH
•回车为0DH,换行为0AH,响铃为07H。
记住几个常用的编码
奇偶校验码:
•在通信中将最高位(D7位)用作奇偶校验位**。**
•偶校验:包括校验位在内的8位二进制数码中1的个数为偶数。
•奇校验:包括校验位在内的8位二进制数码中1的个数为奇数。
•例:字母A的ASCII码为1000001,偶校验码为01000001,奇校验码为11000001。