Двоичное кодирование

Автор работы: Пользователь скрыл имя, 06 Февраля 2014 в 20:56, реферат

Краткое описание

К недостаткам двоичной системы можно отнести только «длинную» запись чисел (чем меньше в системе цифр, тем длиннее будет запись числа):
Однако этот досадный факт не помешал инженерам использовать двоичную систему при конструировании электронных схем. Перевести число из двоичной системы в привычную десятичную может не только вычислительная машина, но и человек.

Вложенные файлы: 1 файл

ДВОИЧНОЕ КОДИРОВАНИЕ.docx

— 17.53 Кб (Скачать файл)

    ДВОИЧНОЕ КОДИРОВАНИЕ

 

 

Двоичная система счисления  была придумана задолго до появления  компьютеров. Ещё великий немецкий математик Готфрид Вильгельм  Лейбниц увидел в двоичной системе  особый скрытый смысл. Действительно, двоичная система предельно проста:

используется всего две цифры — 0 и 1;

таблица умножения состоит всего из трёх строк:

0* 0 = 0, 0*1=0, 1*1 = 1

К недостаткам двоичной системы  можно отнести только «длинную»  запись чисел (чем меньше в системе  цифр, тем длиннее будет запись числа):

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

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

Для числа  таблица выглядит так:

Единицы в первой строке таблицы указывают, какие степени  двойки нужно сложить, чтобы получить число:

1024 + 512 + 256 + 128 + 64 + 16 + 2 + 1=2003, т.е. 

 

-Алгоритм перевода числа  в двочную систему аналогичен предыдущему. но требует проведения операции деления с остатком. Число последовательно делят на два, выписывая результат в столбик, одновременно записывают остатки (не пропуская нулевые). Ответом будет число, получившееся в правом столбце (снизу вверх). Для числа 413 это выглядит так:

413 1

206 0

103 1

51 1

25 1

12 0

6 0

3 1

1 1

Если теперь выписать получившеесяя во втором столбце (снизу вверх) число, оно и будет ответом:

В переводе чисел из двоичной системы счисления в десятичную систему и обратно нет ничего сложного и магического. Каждый освоивший  эту несложную науку может  считать себя понимающим язык ЭВМ. Однако записывать в двоичной системе числа  по-прежнему неудобно, так как запись занимает много места. И перевод  в двоичную систему вряд ли удастся  выполнить в уме. Поэтому стали  использовать системы, родственные  двоичной системе счисления, в которых  запись числа на бумаге короче, чем  в двоичной, а алгоритмы перевода не требуют сложных вычислений.

БИТЫ И БАЙТЫ

Символы двоичной системы  счисле­ния — 0 и 1 называют двоичными  цифрами или битами (от англ. binary digit — «двоичная цифра»),

У электронных схем для  обработки двоичных кодов есть только два устойчивых состояния: «есть  сигнал»/«нет сигнала» (высокое напряжение/низкое напряжение).

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

При хранении информации в  памяти компьютера каждый бит хранится в одном разряде памяти. Разряды  объединяются в ячейки памяти фиксированного размера — 8, 16 и 32 разряда и носят  специальные названия «байт», «слово»  и «двойное слово». Фактически это  является стандартом для современных  персональных компьютеров.

При кодировании чисел  важно помнить, что, например, число 100010 не удастся поместить в один байт, поскольку его двоичная запись содержит десять цифр (), что больше размера байта. И конечно, существуют большие числа, не помещающиеся даже в двойное слово.

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

По аналогии в одном  байте можно закодировать 256 различных  символов какого-либо текста. На первый взгляд это много: буквы русского алфавита, прописные и строчные, знаки препинания, десять цифр, ещё  латинский алфавит. Однако если потребуется  ввести ещё какой-нибудь алфавит, то, скорее всего, места уже не хватит. Тогда символ текста будет кодироваться не байтом, а словом, что автоматически  увеличит объём хранимой информации в два раза.

Как уже говорилось, при  двоичном кодировании в компьютере нельзя записать ничего, кроме двоичных цифр. В одном байте можно хранить  одно неотрицательное целое число  от 0 до 255, а требуется ещё придумать  кодирование отрицательных чисел. Например, в одном байте можно  хранить 128 отрицательных целых чисел (от-128 до -1), 0 и 127 положительных чисел  от 1 до 127. Всего же чисел по-прежнему останется 256, как и закодированных символов.

Нуль будет кодироваться комбинацией из восьми нулей: 00000000.

Положительные числа от 1 до 127 кодируются, как обычно, в двоичной системе, при этом слева дописывают незначащие нули:

1 - 00000001

2 — 00000010

3 — 00000011

 

... ...

126 — 01111110

127 — 01111111

 

Отрицательное число запишется  в дополнительном коде. Например, отрицательное  число - 5 хранится как двоичная запись числа 256-5 (256 = ), т. е. дополнение к 5 до 256:

11111011. Поскольку -5 + 256 >127, в старшем разряде двоичного  числа будет единица, сигнализирующая,  что число отрицательное, поэтому  старший разряд ячейки обычно  называют знаковым. Так кодируются  отрицательные числа -1, -2, -3, ... , -127, -128.

 

 

 

ВОСЬМЕРИЧНАЯ СИСТЕМА  СЧИСЛЕНИЯ

В этой системе восемь цифр: 0, 1, 2, 3, 4, 5, б, 7. Цифра 1, записанная в  младшем разряде, означает — как  и в десятичном числе — просто единицу, а в следующем разряде  она означает 810, в следующем —  б4щ и т. д.

Число Ю08 — это б4ю, а  число 6358=б.б4 + 3 • 8 + 5 = 413ю-При вычислениях  числа указаны в десятичной системе  и признак десятичной системы 10 опущен.

Перевод из восьмеричной системы  в десятичную по сложности вычислений мало отличается от перевода из двоичной. А вот перевод из восьмеричной системы в двоичную очень прост. Достаточно составить таблицу триад (по три цифры):

и запомнить её как таблицу умножения. При переводе восьмеричного числа в двоичное заменяют каждую восьмеричную цифру на соответствующую триаду из таблицы. В качестве примера переведём число в двоичную систему:. Для обратной операции, т. е. для перевода из двоичной в восьмеричную систему, двоичное число разбивают на триады (справа налево), потом заменяют каждую группу одной восьмеричной цифрой. Допустим,

 

Если первой полноценной  триады не получается (не хватает цифр), то её дополняют ведущими нулями:

 

ШЕСТНАДЦАТЕРИЧНАЯ СИСТЕМА  СЧИСЛЕНИЯ

Запись числа в восьмеричной системе достаточно компактна, но ещё  компактнее она получается в шест-надцатеричной системе. Для первых десяти цифр используют привычные цифры: 0, 1, 2, 3, 4, 5, 6, 7, 8, 9, а для остальных шести цифр — первые буквы латинского алфавита:

A 10

B 11

C 12

D 13

E 14

F 15

Как и в восьмеричной системе, цифра 1, записанная в младшем разряде, означает единицу. В следующем разряде  та же цифра 1 означает , в следующем — и т. д. Цифра F, записанная в младшем разряде, означает , в следующем разряде — и т. д. Например,

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

 

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


Информация о работе Двоичное кодирование