整数倍是什么意思(整数是什么概念)

添财网 10-29 8:08 197次浏览

第一次写博客,没什么经验,会保持更新的,文章也会不断优化的,请大家多多指教

整数表示

现代计算机存储和处理的信息以二值表示,也即是只包含0和一的二进制数字,其中整数表示的方法分为有符号整数、无符号整数。常用的数字表示方法有二进制、十进制、八进制、十六进制。下表为十六进制、十进制、和二进制的对应表示法。

十六进制0123456789ABCDEF

十进制

10

11

12

13

14

15

二进制

0000

0001

0010

0011

0100

0101

0110

0111

1000

1001

1010

1011

1100

1101

1110

1111

无符号整数

B2U() 为将二进制数转换为无符号数的函数

B2U[0001] = 0 * 2^3 + 0 * 2^2 + 0 * 2^1 + 1 * 2^0 = 1;

B2U[0101] = 0 * 2^3 + 1 * 2^2 + 0 * 2^1 + 1 * 2^0 = 5;

B2U[0001] = 0 * 2^3 + 0 * 2^2 + 0 * 2^1 + 1 * 2^0 = 1;

B2U[0001] = 0 * 2^3 + 0 * 2^2 + 0 * 2^1 + 1 * 2^0 = 1;

设计算机为w位(上为4位,现在计算机一般为64位),则可以表示最大无符号整数为:(2^w – 1),最小为:0;

有符号整数

B2T[0001] = 0 * 2^3 + 0 * 2^2 + 0 * 2^1 + 1 * 2^0 = 1;

B2T[0101] = 0 * 2^3 + 1 * 2^2 + 0 * 2^1 + 1 * 2^0 = 5;

B2T[1011] = -1 * 2^3 + 0 * 2^2 + 0 * 2^1 + 1 * 2^0 = -5;

B2T[1111] = -1 * 2^3 + 0 * 2^2 + 0 * 2^1 + 1 * 2^0 = -1;

设计算机为w位(上为4位,现在计算机一般为64位),则可以表示最大无符号整数为:(2^(w-1) – 1),最小为:(-2^(w-1));

浮点数表示二进制小数

以下为个人理解,先举个例子:

十进制表示小数值二进制表示

000001

0.5

1/2

00000.1

0.25

1/4

0000.01

0.125

1/8

000.001

0.75

3/4

0000.11

1.5625

25/16

01.1001

∉εεεεεεεε

仔细看就会返现一个规律:

1的二进制表示为:000001,除以8,即2^3

3的二进制表示为:000011,除以4,即2^2

25的二进制表示为:011001,除以16,即2^4

没错,整数减少一倍,二进制中小数点右移一位,如果整数增加一倍,则二进制中小数左移一位

IEEE浮点表示

目前所有的计算机都支持的表示浮点数的标准

V = (-1)^s * M * 2^E

最常见的单精度浮点格式float32位:s 1位,exp k=8位,frac n = 23位。

双精度浮点格式double:s 1位, exp k = 11位,frac n = 52位。