二进制学习01(二进制,进制运算,数据宽度,无符号位有符号位编码规则)


进制

进制也就是进位计数制,是人为定义的带进位的计数方法(有不带进位的计数方法,比如原始的结绳计数法,唱票时常用的“正”字计数法,以及类似的tally mark计数)。 对于任何一种进制—X进制,就表示每一位置上的数运算时都是逢X进一位。 十进制是逢十进一,十六进制是逢十六进一,二进制就是逢二进一,以此类推,x进制就是逢x进位。
二进制,是计算技术中广泛bai采用的一种数制。计算方法:二进制数据是用0和1两个数码来表示的数。它的基数为2,进位规则是“逢二进一”,借位规则是“借一当二”。

当前的计算机系统使用的基本上是二进制系统,数据在计算机中主要是以补码的形式存储的。计算机中的二进制则是一个非常微小的开关,用“开”来表示1,“关”来表示0。


一、二进制简介

二进制,是计算技术中广泛bai采用的一种数制。计算方法:二进制数据是用0和1两个数码来表示的数。它的基数为2,进位规则是“逢二进一”,借位规则是“借一当二”。

当前的计算机系统使用的基本上是二进制系统,数据在计算机中主要是以补码的形式存储的。计算机中的二进制则是一个非常微小的开关,用“开”来表示1,“关”来表示0。

1)什么是二进制?

二进制(binary)在数学和数字电路中指以2为基数的记数系统,以2为基数代表系统是二进位制的。这一系统中,通常用两个不同的符号0(代表零)和1(代表一)来表示 。数字电子电路中,逻辑门的实现直接应用了二进制,因此现代的计算机和依赖计算机的设备里都用到二进制。每个数字称为一个比特(Bit,Binary digit的缩写)。

2)二进制的简写形式

常用进制转换
虽然二进制有不少优点,但毕竟我们日常生活中用的都是十进制。为了能在日常生活中使用,就有必要把它转换为十进制。至于为什么用八进制和十六进制呢?很简单,就是因为它是2的乘方,2³=8,2⁴=16,这样一来就便于二进制的计算和阅读。

对于其它进制转换为十进制比较简单,下面举例说明:在计算机科学中,二进制、八进制、十进制、十六进制有简写,这样是为了不混淆。十进制一般在末尾加个字母D[一般习惯都不加],二进制加个B,八进制加Q,十六进制加H。

二、进制运算

进制的本质是查数,每一种进制之间都是一个独立的体系,所以它们都能单独运算。
例:写一组八进制的数字。

0 1 2 3 4 5 6 7 10 11 12 13 14 15 16 17 20 21 22 23 24 25 26 27 …

2 + 3 :2后面查3个数,所以 2+3 = 5;

2 * 3 :可以看成2个3,或者3个2,同样的道理,我们查数可知 2*3 = 6;

4 + 5 :4后面查5个数,所以 4+5 = 11;

4 * 5 :可以看成4个5,或者5个4,这样我们对照上面的表依次查数,4*5 = 24;

1)八进制运算表

(1) 加法运算表

加法表同样可以用在减法运算中
在这里插入图片描述

(2)乘法运算表

乘法表同样可以用在除法运算中
在这里插入图片描述

(3)八进制简单运算题

277 + 233 :
237 - 54 :
276 * 54 :
234 / 4 :
对着上面乘法加法表,像我们小时候学加减乘除那样列出计算过程:
在这里插入图片描述
在这里插入图片描述
在这里插入图片描述
在这里插入图片描述

三、数据宽度

数学上的数字,是没有大小限制的,可以无限大。但是在计算机中,由于受到硬件的制约,数据是有长度限制的(我们称为数据宽度)。超过最多宽度的数据会被丢掉
不管你存储的是什么数据,在计算机中它最后都是以0,1的形式存储的

1)什么是数据宽度

1、数据宽度是指中央处理器中运算器与存储器之间进行互连的内部总线二进制位数,影响计算机的吞吐量。

2、数据总线负责计算机中数据在各组成部分之间的传送,数据总线宽度是指在芯片内部数据传送的宽度。

3、数据总线宽度则决定中央处理器与二级缓存,内存以及输入设备和输出设备间一次数据传输的信息量。

4、数据宽度的大小决定了电脑运行速度的快慢。

2)计算机中常用的基本数据宽度

(1)位又称比特(Bit)是计算机中存储,处理,传送信息的最小单元。

(2)字节(Byte)是二进制信息的计量单位,又成位组。一个字节有8位,1Byte=8Bit。
存储器按字节编址,所以字节是最小的可寻址单位。

(3)字长是数据通路的宽度。等于运算器,总线,寄存器的宽度,是物理层面的。

(4)字表示被处理信息的单位,用来度量数据类型的宽度。
在这里插入图片描述
在这里插入图片描述

四、无符号数有符号数

有符号数就是用最高位表示符号(正或负),其余位表示数值大小,无符号数则所有位都用于表示数的大小。

有符号数用最高位作为符号位,“0”代表“+”(正),“1”代表“-”(负);其余数位用作数值位,代表数值。

1)无符号数的编码规则:
用十六进制显示,一个十六进制可以表示四个字节

例:
1000 1010 用十六进制显示为 “8A”
0001 1011 用十六进制显示为 “1B”

2)有符号数编码规则:
(1)正数编码规则:
最高位为”0“,编码规则与无符号数编码规则相同;
(2)负数编码规则:
最高位为”1“时,我们需要先了解什么是原码、反码与补码。

原码:最高位为符号位,其余各位为数值本身的绝对值;

反码:正数的反码与原码相同;负数:符号位为1,其余位对原码取反,即”0“为”1“,”1“为”0“;

补码:正数的补码与原码相同:负数:符号位对原码取反后加1。

例:-1
原码:1000 0001
反码:1111 1110
补码:1111 1111

总结:在计算机中,正数以原码保存,负数以补码保存。

(本人计算机小白一枚,上述内容均来自网络查找,如有错误,还请各路大神多多指正。)

猜你喜欢

转载自blog.csdn.net/Taikx/article/details/113356193