【计算机专转本系列--理论】信息在计算机中的表示

本文详细介绍了计算机中表示的单位(比特、字节等)、进制转换方法(包括二进制、八进制、十六进制),以及无符号和有符号整数的表示(原码、补码、反码)及其运算,涉及溢出处理和位移操作。
摘要由CSDN通过智能技术生成


一、计算机表示的单位

1.比特(b):即二进制位,是组成数字信息的最小单位,用“0”或“1”表示。
2.字节(B):是计算机存储的基本单位:1B=8b。
3.内存中各单位之间是2^10B, 外存各单位之间是10^3B。
1KB=2^10B , 1MB=2^20B , 1GB=2^30B
4.采用二进制的主要原因:

  • 技术实现简单
  • 简化运算规则
  • 符合逻辑运算

二、进制转换(重难点–基本必考)

1.各种进制

十进制逢十进一尾部加‘D’或缺省基数是10,每位出现的数在0~9之间
二进制逢二进一尾部加‘B’基数是2,每位出现的数在0~1之间
八进制逢八进一尾部加‘Q’基数是8,每位出现的数在0~7之间
十六进制逢十六进一尾部加‘H’基数是16,每位出现的数在0~9 ,A~F之间 (A表示10,依次往下)

其中还涉及二进制的逻辑运算。

  • 逻辑乘法(与运算): 符号是倒过来的V,全1为1,否则为0。
  • 逻辑加法(或运算): 符号是V,全0为0,否则为1。
  • 逻辑否定(非运算):按位运算, 1取反为0,0取反为1。
  • 异或:相同为0,相异为1。
  • 同或:相同为1,相异为0。

2.二进制转十进制

举例子:11010.1011B
在这里插入图片描述

3.八进制转二进制/二进制转八进制

方法其实是一样的,主要利用1位八进制与3位二进制的转换关系。

八进制数二进制数
0000
1001
2010
3011
4100
5101
6110
7111

注意:整数部分不满3位,高位补0,凑满3位;小鼠部分不满三位,低位补0,凑满三位。

举例子:11010.1011B
=011 010. 101 100 B
=32.54Q

4.十六进制转二进制/二进制转十六进制

方法其实是一样的,主要利用1位十六进制与4位二进制的转换关系。

十六进制数二进制数十六进制数二进制数
0000081000
1000191001
20010A1010
30011B1011
40100C1100
50101D1101
60110E1110
70111F1111

举例子:11010.1011B
=0001 1010.1011B
=1A.BH

5.BCD编码

其实BCD就是以四位二进制表示0~9这10个数码,见上方表格,表示不了A ~ F 。

三、无符号整数和有符号整数的表示

1.无符号整数的表示范围:0~2^n-1(2的n次方减1)。
2.有符号整数的表示,概念会多很多,考点也比较多,要注意。

1.原码,补码,反码

1.符号位用最高位表示,其中 ‘0’为正号,‘1’为负号。
2.原码表示范围:-2^(n-1)+1 ~ 2^(n-1)-1.
补码表示范围:-2^(n-1) ~ 2^(n-1)-1
由此可知,在位数相同的情况下,补码的表示范围比原码的表示范围多一个
3.0在补码中只有一种表示方式。

2.计算

1.原码转补码有一个简单方法
原本公式是原码除符号位不变以外,各位取反,最后加一。
实际运算的时候可以,符号位不变,找到一个离符号位最远的1,最远的1之后的数字不管它,然后,符号位和1之间的数取反,求出的结果就是补码。

举例子:
原码:11010100
补码:10101100

2.有符号最大负数
求解过程,先把符号位排上1,然后根据题目中1的个数,先排剩下的1,再排剩下的0,得到其补码,然后看清楚题目问什么,如果求十进制数这种,就得先求原码再往下求。

3.有符号最大正数
求解过程:0排首位,然后根据题目中0的个数,先排剩下的0,再排剩下的1,得到其补码,然后看清楚题目问什么,如果求十进制数这种,就得先求原码再往下求。
注意:正数的补码和原码是其本身,不用颠来倒去的求,反而求错,要注意。一般出题会给一个正数,一个负数,让我们求。

4.IEEE 745那块我不会,学了很久不理解,有好心人可以教教我。考试好像也不怎么考。

3.关于溢出问题

我的记忆方法是:同号相减,异号相加不会发生溢出,然后无符号运算和逻辑运算也不会,其他可能会溢出。(其实正常记同号相加,异号相减溢出也行)。

4.关于左移和右移

其实理论上应该会在实操那块考,但浅提一下。

左移:
左移运算符是<<
左移操作将一个数的所有二进制位向左移动指定的位数。
对于无符号整数,左移相当于乘以2的指定次方。

右移:
右移运算符是>>
右移操作将一个数的所有二进制位向右移动指定的位数。
对于无符号整数,右移相当于除以2的指定次方,低位移出去的位全部丢弃。

  • 13
    点赞
  • 28
    收藏
    觉得还不错? 一键收藏
  • 1
    评论
评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值