Студопедия

КАТЕГОРИИ:


Архитектура-(3434)Астрономия-(809)Биология-(7483)Биотехнологии-(1457)Военное дело-(14632)Высокие технологии-(1363)География-(913)Геология-(1438)Государство-(451)Демография-(1065)Дом-(47672)Журналистика и СМИ-(912)Изобретательство-(14524)Иностранные языки-(4268)Информатика-(17799)Искусство-(1338)История-(13644)Компьютеры-(11121)Косметика-(55)Кулинария-(373)Культура-(8427)Лингвистика-(374)Литература-(1642)Маркетинг-(23702)Математика-(16968)Машиностроение-(1700)Медицина-(12668)Менеджмент-(24684)Механика-(15423)Науковедение-(506)Образование-(11852)Охрана труда-(3308)Педагогика-(5571)Полиграфия-(1312)Политика-(7869)Право-(5454)Приборостроение-(1369)Программирование-(2801)Производство-(97182)Промышленность-(8706)Психология-(18388)Религия-(3217)Связь-(10668)Сельское хозяйство-(299)Социология-(6455)Спорт-(42831)Строительство-(4793)Торговля-(5050)Транспорт-(2929)Туризм-(1568)Физика-(3942)Философия-(17015)Финансы-(26596)Химия-(22929)Экология-(12095)Экономика-(9961)Электроника-(8441)Электротехника-(4623)Энергетика-(12629)Юриспруденция-(1492)Ядерная техника-(1748)

Системы счисления и преобразования между ними




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

Easy Code

Разработчики

· Джон Фаунд — основоположник проекта, написавший значительную часть кода последних версий;

· Фредрик Классон (scientica);

· Томми Лиллехаген;

· Виктор Ло (roticv);

· Юнус Сина Гюльшен (VeSCeRa);

· Матьяш Тымек (decard).

Скриншот ИСР:

Скриншот ИСР:

Различные системы счисления отличаются не только базовым набором чисел, но и основными концепциями, которые лежат в их основе. Взять, например, систему счисления, которая использовалась древними римлянами: она довольно трудна для восприятия, в ней очень сложно производить вычисления и невозможно представить 0. Данная система неудобна даже для человека, не говоря уж о том, чтобы научить компьютер «понимать» ее. Говорят, что римским коммерсантам не был нужун 0 и отрицательные числа, так как они манипулировали числом «штук».

· Десятичные числа

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

A = An * Zn + An-1*Zn-1 + … + A1*Z1 +A0*Z0

Здесь:

· An - цифры числа

· Z - основание системы счисления

Например, десятичное число 1234 можно представить так:

1234 = 1*103 + 2*102 + 3*102 + 4*100.

«Вес» каждой цифры определяется позицией цифры в числе и равен степени основания, соответствующей ее позиции. Позиции нумеруются слева, начиная с 0.

· Двоичные числа

При работе с различными системами счисления мы будем записывать само число в скобках, а за скобками — основание системы. Например, если написать просто число 1100, то не понятно, в какой системе оно записано — это может быть одна тысяча сто, а может быть 12, если число записано в двоичной системе. А если представить число в виде (1100)2, то сразу все становится на свои места: число записано в двоичной системе.

Двоичная система тоже позиционная, поэтому, например, число 1100 в двоичной системе мы можем представить так:

(1100)2 = 1*23 + 1*22 + 0*21 + 0*20 = 4 + 8 =(12)10.

Обратите внимание, что для представления числа 12 в двоичной системе использованы только 4 разряда. Наибольшее число, которое можно записать 4 двоичными цифрами, равно 15, потому что

(1111)2 = 1*23 + 1*22 +1*21 + 1*20 = 8 + 4 + 2 + 1 = (15)10.

В программах двоичные числа завершаются суффиксом b. В примере это 1100b.

Для кодирования двоичных чисел применяют несколько кодов.:

Прямой код: 0 в старшем разряде соответствует положительным числам, 1 – отрицательным. Остальные разряды представляют модуль числа. В таком коде удобно осуществлять операции умножения (модули чисел перемножаются, а знаковые разряды складываются по модулю два), но неудобно реализовывать сложение. Примеры:

Разряды                 Число
Биты                 01100011b
Число + 64=26 32=25       2=21 1=20 +99 = 64 + 32 +2 + 1
Биты                 11100011b
Число - 64=26 32=25       2=21 1=20 -99 = -(64 + 32 +2 + 1)

Дополнительный код: 0 в старшем разряде соответствует положительным числам, 1 – отрицательным. Дополнительный код положительного числа, есть само число. Дополнительный код отрицательного числа образуется путем инверсии всех битов положительного числа (включая знаковый) и прибавления 1. В дополнительном коде удобно выполнять операции сложения – числа со знаком складываются точно так же, как беззнаковые. Обратное преобразование производится точно по тому же правилу. Дополнительное преимущество дополнительного кода: +0 и -0 имеют одинаковый код 000b. Примеры:

Разряды                 Число
Биты                 01100011b
Число + 64=26 32=25       2=21 1=20 +99 = 64 + 32 +2 + 1
Биты                 10011101b
Число - 64=26 32=25       2=21 1=20 -99 = -(64 + 32 +2 + 1)

Обратный код: 0 в старшем разряде соответствует положительным числам, 1 – отрицательным. Обратный код положительного числа, есть само число. Совпадает с прямым кодом. Обратный код отрицательного числа образуется путем вычитания символа каждого разряда (включая знаковый) из числа, на 1 меньшего основания системы счисления. Обратное преобразование производится точно по тому же правилу. Практически не применяется.

Смещенный код: 1 в старшем разряде соответствует положительным числам, 0 – отрицательным. Представления чисел получаются путем прибавления к ним константы 2N–1, где N – число двоичных разрядов (не считая знакового). Применяется для кодирования вещественных чисел (с дробной частью) в формате с плавающей точкой.

· 8-ричные чила

Двоичная система счисления, в которой работают все цифровые электронные устройства, неудобна для человека. Для удобства представления двоичного содержимого ячеек памяти или регистров процессора используется позиционая 8-ричная система счисления. Ее алфавит состоит из 8 арабских цифр от 0 до 7. Пример 8-ричного числа:

(247)8 = 2*82 + 4*81 + 7*80 = 128 + 32 + 7 = 167.

В программах 8-ричные числа завершаются суффиксом o. В примере это 247o.

Переход от десятичных чисел к 8-ричным и обратно производится аналогично случаю двоичных чисел. Преобразование двоичных чисел в 8-ричные производится следующим образом:

· Двоичное число, начиная с младших разрядов, разбивается на триады (тройки символов). Если длина числа не кратна трём, то оно дополняется старшими нулевыми разрядами.

· Каждая триада записывается символами 8-ричного алфавита.

При обратном переходе каждый символ представляется 3-разрядным двоичном числом. Единая последовательность этих чисел и представляет собой искомое двоичное число.Знак 8-ричного числа отображается в старшем разряде: 0 соответствует положительному числу, 1 – отрицательному.

8-ричные числа сейчас почти не применяются, так как в большинстве процессоров адресуются байты, в котоых 8 позиций (не кратно 3).

· 16-ричные чила

Двоичная система счисления, в которой работают все цифровые электронные устройства, неудобна для человека. Для удобства представления двоичного содержимого ячеек памяти или регистров процессора используется позиционая 16-ричная система счисления. Ее алфавит состоит из 10 арабских цифр от 0 до 9 и шести латинских букв: A (вес 10), B (вес 11), C (вес 12), D (вес 13), (вес 14), F (вес 15). Пример 16-ричного числа:

(524D)16 = 5*163 + 2*162 + 4*161 + 13*160 = 20480 + 512 + 64 + 13 = 21069.

В программах 16-ричные числа завершаются суффиксом h. В примере это 524Dh.

То же самое число в двоичном представлении содержит в 4 раза больше символов – 0101 0010 0100 1101.!6-ричное представление более компактно.

Переход от десятичных чисел к 16-ричным и обратно производится аналогично случаю двоичных чисел. Преобразование двоичных чисел в 16-ричные производится следующим образом:

· Двоичное число, начиная с младших разрядов, разбивается на тетрады (четвёрки символов). Если длина числа не кратна четырём, то оно дополняется старшими нулевыми разрядами.

· Каждая тетрада записывается символами 16-ричного алфавита.

При обратном переходе каждый символ представляется 4-разрядным двоичном числом. Единая последовательность этих чисел и представляет собой искомое двоичное число.Знак 16-ричного числа отображается в старшем разряде: 0 соответствует положительному числу, 1 – отрицательному.

В программах 16-ричные эквиваленты сопровождаются суффиксом h.




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


Дата добавления: 2014-10-23; Просмотров: 527; Нарушение авторских прав?; Мы поможем в написании вашей работы!


Нам важно ваше мнение! Был ли полезен опубликованный материал? Да | Нет



studopedia.su - Студопедия (2013 - 2024) год. Все материалы представленные на сайте исключительно с целью ознакомления читателями и не преследуют коммерческих целей или нарушение авторских прав! Последнее добавление




Генерация страницы за: 0.008 сек.