Преобразование десятичных чисел в двоичные числа



Пусть 1310 нужно перевести в двоичную систему счисления. Переход в этом случае осуществляется делением числа 1310, на основание системы счисления в которую мы переходим, в целых числах с выписыванием остатков деления, по следующей схеме:

Пример 3

13:2 = 6 остаток 1 это разряд весом 1

6 : 2 = 3 остаток 0  это разряд весом 2

3 : 2 = 1 остаток 1 это разряд весом 4

1 : 2 = 0 остаток 1 это разряд весом 8

Помня о том, что самый младший разряд всегда занимает крайнее правое место в записанном числе в любой системе счисления, выписываем результат:

1310 = 11012.

Процесс перехода заканчивается в тот момент, когда очередной результат деления даст ноль (0) целых.

Вывод: остатки, от деления, выписанные в соответствии с весами разрядов, дадут искомое число.

Переведем еще одно число 3710 в двоичную систему счисления:

Пример 4

37:2 = 18 остаток 1  

18:2 = 9 остаток 0     

 9 : 2 = 4 остаток 1     

4 : 2 = 2 остаток 0     

2 : 2 = 1 остаток 0

1 : 2 = 0 остаток 1  

Отсюда 3410 = 1001012. Деление заканчивается в тот момент, когда имеем частное равное 0.

Перевод чисел из двоичной системы счисления в десятичную систему счисления.

Преобразование из двоичной системы счисления в десятичную осуществляется с помощью выражения вида: Xs=A 0S0+ A 1S1+ A 2S2+…, где Xs – число в S-й системе счисления, S – основание системы, А – цифра числа. Данное выражение используется для преобразования целых чисел, причём отчёт цифр идёт справа налево.

Например, перевести число 1101102 в десятичную систему счисления. 1101102=0*20+1*21+1*22+0*23+1*24+1*25= 0+2+4+0+16+32=5410

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

Например, перевести число 10,112 в десятичную систему счисления.

10,112=1*2-2+ 1*2-1+0*20+1* 21=1/4+1/2+0*1+1*2=0,25+0,5+0+2=2,7510

Перевод чисел из двоичной системы счисления в восьмеричную.

Для записи двоичных чисел используются две цифры, то есть в каждом разряде числа возможны 2 варианта записи. Решаем показательное уравнение:

2 = 2i . Так как 2 = 21, то i = 1 бит.

Каждый разряд двоичного числа содержит 1 бит информации.

Для записи восьмеричных чисел используются восемь цифр, то есть в каждом разряде числа возможны 8 вариантов записи.

Решаем показательное уравнение:

8 = 2i . Так как 8 = 23, то i = 3 бита.

Каждый разряд восьмеричного числа содержит 3 бита информации.

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

Переведем таким способом двоичное число 1010012 в восьмеричное:

101 0012 => 1 × 22 + 0 × 21 + 1 × 20    0 × 22 + 0 × 21 + 1 × 20 => 518.

Для упрощения перевода можно заранее подготовить таблицу преобразования двоичных триад (групп по 3 цифры) в восьмеричные цифры:

Для перевода дробного двоичного числа (правильной дроби) в восьмеричное необходимо разбить его на триады слева направо и, если в последней, правой, группе окажется меньше трех цифр, дополнить ее справа нулями. Далее необходимо триады заменить на восьмеричные числа.

Например, преобразуем дробное двоичное число А2 = 0,1101012 в восьмеричную систему счисления:

Получаем: А8 = 0,658.

Перевод чисел из двоичной системы счисления в шестнадцатеричную.

Для записи шестнадцатеричных чисел используются шестнадцать цифр, то есть в каждом разряде числа возможны 16 вариантов записи. Решаем показательное уравнение:

16 = 2i . Так как 16 = 24, то i = 4 бита.

Каждый разряд шестнадцатеричного числа содержит 4 бита информации.

Таким образом, для перевода целого двоичного числа в шестнадцатеричное его нужно разбить на группы по четыре цифры (тетрады), начиная справа, и, если в последней левой группе окажется меньше четырех цифр, дополнить ее слева нулями. Для перевода дробного двоичного числа (правильной дроби) в шестнадцатеричное необходимо разбить его на тетрады слева направо и, если в последней правой группе окажется меньше четырех цифр, то необходимо дополнить ее справа нулями.

Затем надо преобразовать каждую группу в шестнадцате-ричную цифру, воспользовавшись для этого предварительно составленной таблицей соответствия двоичных тетрад и шестнадцатеричных цифр.

Переведем целое двоичное число А2 = 1010012 в шестнадцатеричное:

В результате имеем: А16 = 2916.

Переведем дробное двоичное число А2 =0,1101012 в шестнадцатеричную систему счисления:

Получаем: А16 = 0,D416.

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

 

Представление данных в ЭВМ.

Современные ЭВМ реализованы на электронных элементах (триггерах), имеющих два устойчивых состояния (типа включен/выключен). Эти состояния кодируются – одно обозначается “0”(ноль), другое – “1” (единица). Таким образом, язык ЭВМ содержит как и азбука Морзе (телеграфная азбука) только два символа. Это в свою очередь, вынуждает для представления данных в ЭВМ использовать специальные коды. Данные по типу можно разделить на четыре группы.

СИМВОЛЬНЫЕ – используются для обозначения понятий, объектов и формирования текстов по правилам того или иного языка сообщений.

ЧИСЛОВЫЕ – используются для обозначения КОЛИЧЕСТВ в различных формах и различных системах счисления (двоичной, восьмеричной, десятичной и шестнадцатеричной)

ДАТА - используется для представления ДАТ в различных формах (американской, германской, европейской и других)

ЛОГИЧЕСКИЕ – используются для обозначения НАЛИЧИЯ или отсутствия какого-либо признака (ЕСТЬ/НЕТ) и имеют только два значения:

ИСТИНА – обозначается либо .T., либо Y

ЛОЖЬ – обозначается либо .F., либо N

Основным элементом кодированного представления данных в ЭВМ является БАЙТ. Это код из восьми позиций, в каждой из которых может находиться либо 0, либо 1. Например: 01001000 или 01000101 и т.п. Каждая позиция называется разрядом или битом. В зависимости от того, какой тип данных представляет байт, его содержимое интерпретируется по-разному.

При представлении СИМВОЛЬНЫХ данных один байт представляет собой кодированное представление одного символа, например:

01001110 - код буквы N, 01000101 - код буквы Е

Байтом можно представить 256 различных символов. Для такого представления используется стандартная таблица ASCII (читается аски). В этой таблице первые 128 кодовых комбинаций являются общими для всех стран, а последние 128 кодов символов используются в различных языках, в частности русском. Каждому символу таблицы ASCII соответствует свой и только свой код.

При представлении ЧИСЛОВЫХ данных один байт интерпретируется как целое число в пределах от -127 до 128. Поскольку это очень узкий диапазон, то для представления любого как дробного, так и целого числа используется несколько байт (чаще всего четыре байта). Таким образом, если рассматривать коды букв N и E как числовые данные, то это 78 и 69 соответственно. Если же рассматривать оба байта как одно число 0100111001000101, то оно соответствует 12037. В настоящее время принят следующий стандарт:

ЦЕЛОЕ ЧИСЛО - два байта, ДРОБНОЕ ЧИСЛО - четыре байта.

Данные типа ДАТА представляются всегда восьмью байтами.  

При представлении ЛОГИЧЕСКИХ данных для одного значения достаточно одного бита (0 - .F., 1 - .T.), однако чаще для представления одного значения используется один байт.


Дата добавления: 2019-02-12; просмотров: 363; Мы поможем в написании вашей работы!

Поделиться с друзьями:






Мы поможем в написании ваших работ!