数字系统
数字系统是一组使用不同数字符号表示数字的规则。数字系统分为两种类型:非位置和位置。
在位置数字系统中,每个数字的值不取决于它所占的位置,即它在数字集中所占的位置。在罗马数字系统中,只有七位数字:一(I)、五(V)、十(X)、五十(L)、一百(C)、五百(D)、一千(M)。使用这些数字(符号),通过加法和减法写出剩余的数字。例如,IV 是数字 4 的记法(V-I),VI 是数字 6(V+I)等。数字 666 在罗马系统中的书写方式如下:DCLXVI。
这种表示法不如我们目前使用的方便。这里的六用一个符号写成(VI),六个十用另一个符号写成(LX),六百和三分之一(DC)。用罗马数字系统编写的数字很难执行算术运算。此外,非位置系统的一个共同缺点是在其中表示足够大的数字的复杂性,从而导致极其繁琐的符号。
现在考虑位置数字系统中的相同数字 666。其中,单6表示排在最后一位的个数,排在倒数第二位的表示十的个数,排在倒数第三位的表示百位的个数。这种写数字的原则称为位置(局部)。在这样的录音中,每个数字都会收到一个数值,这不仅取决于它的风格,还取决于它在书写数字时所处的位置。
在位置数系中,任何表示为 A = +a1a2a3 … ann-1an 的数都可以表示为和
其中 n — 数字图像中的有限位数,ii 数字 i-go 数字,d — 数字系统的基数,i — 类别的序数,dm-i — i-ro 类别的“权重” .数字 ai 必须满足不等式 0 <= a <= (d — 1)。
对于十进制表示法,d = 10 且 ai = 0、1、2、3、4、5、6、7、8、9。
由于由 1 和 0 组成的数字在一起使用时可以被视为十进制或二进制数,因此通常表示数字系统的基数,例如 (1100)2-二进制,(1100)10-十进制。
在数字计算机中,广泛使用十进制以外的系统:二进制、八进制和十六进制。
二进制系统
对于这个系统 d = 2,这里只允许两位数字,即 ai = 0 或 1。
以二进制表示的任何数字都表示为基数的幂乘以给定位的二进制数字的两倍的乘积之和。比如数字101.01可以这样写:101.01 = 1×22 + 0x21 + 1×20 + 0x2-1 + 1×2-2,对应十进制数:4 + 1 + 0.25 = 5.25。
在大多数现代数字计算机中,二进制数字系统用于表示机器中的数字并对其执行算术运算。
与十进制相比,二进制数字系统可以简化运算设备和存储设备的电路和电路,并提高计算机的可靠性。二进制数的每一位数字由晶体管、二极管等元件的“开/关”状态表示,这些元件在“开/关”状态下可靠工作。二进制系统的缺点包括需要根据特殊程序将原始数字数据转换为二进制数字系统并将判定结果转换为十进制。
八进制数系统
该系统的基数 d == 8。数字用于表示数字:0、1、2、3、4、5、6、7。
八进制数系统在计算机中用作帮助准备解决问题(在编程过程中)、检查机器的操作和调试程序。该系统给出了比二进制系统更短的数字表示形式。八进制数字系统允许您简单地切换到二进制系统。
十六进制数系统
该系统的基数 d = 16。16 个字符用于表示数字:0、1、2、3、4、5、6、7、8、9、A、B、C、D、E、F 和字符 A ... F 表示十进制数 10、11、12、13、14 和 15。十六进制数 (1D4F) 18 将对应于十进制数 7503,因为 (1D4F)18 = 1 x163 + 13 x 162 + 14 x 161+ 15×16O = (7503)10
十六进制表示法允许二进制数比八进制数写得更紧凑。应用于一些计算机的输入输出设备和数序显示设备。
二进制-十进制数系统
二进制十进制数的表示法如下。以数的十进制表示法为基础,然后将它的每一位(从0到9)写成一个四位二进制数的形式,称为四元组,即不用一个符号来表示十进制的每一位,不过四位。
例如,十进制的 647.59 将对应 BCD 0110 0100 0111、0101 1001。
二进制-十进制数字系统用作中间数字系统并用于对输入和输出数字进行编码。
将一种数制转移到另一种数制的规则
计算机设备之间的信息交换主要是通过二进制数字系统中表示的数字来进行的。但是,信息以十进制系统中的数字形式呈现给用户,而命令寻址以八进制系统呈现。因此需要在使用计算机的过程中将数字从一个系统传输到另一个系统。为此,请使用以下一般规则。
要将一个整数从任何一种数制转换成另一种数制,必须将该数连续除以新系统的底数,直到商不小于除数。新系统中的数字必须以除法余数的形式书写,从最后一位开始,即从右到左。
例如,让我们将十进制的 1987 转换为二进制:
十进制数 1987 的二进制形式为 11111000011,即(1987)10 = (11111000011)2
从任何系统转换为十进制时,数字表示为基数的幂与相应系数的总和,然后计算总和的值。
例如,让我们将八进制数 123 转换为十进制数:(123)8 = 1 x 82 + 2 x 81 + 3 x 80 = 64 + 16 + 3 = 83,即(123)8 = (83)10
要将一个数的小数部分从任何系统转移到另一个系统,有必要对该分数进行连续乘法,并根据新的数系统生成乘积的小数部分。新系统中数字的小数部分以结果产品的整数部分的形式形成,从第一个开始。乘法过程一直持续到计算出具有给定精度的数字为止。
例如,让我们将小数 0.65625 转换为二进制数系统:
由于第五个乘积的小数部分仅由零组成,因此不需要进一步乘法。这意味着给定的十进制被无误地转换为二进制,即(0.65625)10 = (0.10101)2。
从八进制和十六进制转换为二进制,反之亦然并不困难。这是因为它们的基数(d - 8 和 d - 16)对应于整数 2(23 = 8 和 24 = 16)。
要将八进制或十六进制数转换为二进制数,只需分别用三位或四位二进制数替换它们中的每一个数即可。
例如,让我们将八进制数 (571)8 和十六进制数 (179)16 转换为二进制数系统。
在这两种情况下,我们得到相同的结果,即(571)8 = (179)16 = (101111001)2
要将数字从二进制十进制转换为十进制,您需要将二进制十进制表示的数字的每个四分位数替换为十进制表示的数字。
例如,我们将数字 (0010 0001 1000, 0110 0001 0110)2-10 写成十进制,即(0010 0001 1000, 0110 0001 0110)2-10 = (218,625)
