Системы счисления, используемые в вычислительной технике

Двоичная система счисления, используемая в ЭВМ, весьма неудобна для записи и чтения чисел человеком. Для сокращения трудоемкости ручной обработки кодов чисел широко применяют восьмеричную и шестнадцатеричную системы счисления.

В восьмеричной системе счисления используются 8 цифр (0, 1, 2, 3, 4, 5, 6, 7), в шестнадцатеричной – 10 цифр и 6 прописных латинских букв от А до F (0, 1, 2, 3, 4, 5, 6, 7, 8, 9, А, В, С, D, E, F).

Так как основанием восьмеричной системы является число 8 = 23, то для перевода двоичных чисел в восьмеричные необходимо разделить двоичные числа на 3-битовые группы – триады.

Аналогичным образом осуществляется перевод двоичных чисел в шестнадцатеричные (16 = 24). Только в этом случае двоичное число разбивается на 4-битовые группы (тетрады), которые и представляются одной шестнадцатеричной цифрой. На рис. 1.4. показано два примера подобных преобразований.

 

Рис. 1.4. Преобразование чисел

 

Преобразование двоичных чисел в десятичные осуществляется путем суммирования значений степеней числа 2, соответствующих тем разрядам переводимого двоичного числа, в которых содержатся единицы. Аналогичным образом можно выполнить перевод восьмеричных и шестнадцатеричных чисел.

В микрокалькуляторах или кассовых аппаратах широко используется двоично-десятичная система счислений.

В двоично-десятичной системе десятичные цифры от 0 до 9 представляют 4-разрядными двоичными комбинациями от 0000 до 1001, т.е. двоичными эквивалентами десяти первых шестнадцатеричных цифр. Преобразования из двоично-десятичной в десятичную систему выполняются путем прямой замены четырех двоичных цифр одной десятичной цифрой. Две двоично-десятичные цифры составляют 1 байт. Таким образом, с помощью 1 байта можно представлять значения от 0 до 99, а не от 0 до 255, как при использовании 8-разрядного двоичного числа. Используя 1 байт для представления каждых двух десятичных цифр, можно формировать двоично-десятичные числа с любым требуемым числом десятичных разрядов.

Так, если число 1001 0101 0011 1000 рассматривать как двоичное, то его десятичный эквивалент (1001 0101 0011 1000)2= (38200)10 в 4 раза больше десятичного эквивалента двоично-десятичного числа

(1001 0101 0011 1000)2-10= (9538)10.