Кодирование чисел презентация

Содержание

Троицкий Д.И. Информатика САПР 1 семестр Коды: прямой, обратный, дополнительный, модифицированный Одним из способов выполнения операции вычитания является замена знака вычитаемого на противоположный и прибавление его к уменьшаемому: A – B

Слайд 1Троицкий Д.И. Информатика САПР 1 семестр
Кодирование чисел. Код Хэмминга
Лекция 6
Кафедра «Автоматизированные станочные

системы»
Dept. of Automated Manufacturing Systems

Слайд 2Троицкий Д.И. Информатика САПР 1 семестр
Коды: прямой, обратный, дополнительный, модифицированный
Одним из

способов выполнения операции вычитания является замена знака вычитаемого на противоположный и прибавление его к уменьшаемому:
A – B = A + (–B).
Этим операцию арифметического вычитания заменяют операцией алгебраического сложения. Последняя и становится основной операцией.
Для машинного представления отрицательных чисел используют коды:
прямой,
обратный,
дополнительный,
модифицированный.


Слайд 3Троицкий Д.И. Информатика САПР 1 семестр
Коды: прямой, обратный, дополнительный, модифицированный
Прямой код

обычно используется при хранении чисел в запоминающем устройстве, а обратный и дополнительный коды — при выполнении над числами арифметических и некоторых других операций. При пересылках из запоминающего устройства в арифметическое и обратно числа перекодируются.
Все три кода состоят из кода знака (число отведённых разрядов l), кода целой части (m) и кода дробной части (n) числа. Сумма d =l+т+n называется длиной кода. Как правило l, т и n фиксированы. В случае целых чисел n=0, для правильных дробей обычно т=0, когда все числа одного знака, l=0.
Для положительных чисел код знака обозначается последовательностью нулей, для отрицательных — последовательностью единиц. Для положительных чисел прямой, обратный и дополнительный коды совпадают.

Слайд 4Троицкий Д.И. Информатика САПР 1 семестр
Прямой код числа
При кодировании прямым n-разрядным

двоичным кодом один разряд (как правило, самый старший) отводится для знака числа. Остальные n-1 разрядов - для значащих цифр. Значение знакового разряда равно 0 для положительных чисел, 1 - для отрицательных.
Пример: 1 = 0000 0001, -1 = 1000 0001.
Таким образом, прямой код положительного числа совпадает с самим числом, а прямой код отрицательного числа отличается от самого числа единицей в старшем разряде.

Слайд 5Троицкий Д.И. Информатика САПР 1 семестр
Обратный код числа
Обратный код строится только

для отрицательного числа. Обратный код двоичного числа является инверсным изображением самого числа, в котором все разряды исходного числа принимают инверсное значение.
Пример: А1 = 0,11010; [А1]обр = 011010 (без изменений);
А2 = -0,11010; [А2]обр = 100101.
Обратный код двоичного числа является дополнением модуля числа до наибольшего числа без знака, умещающегося в разрядную сетку, т.е. до величины 1,111…1.
Пример:

+1210=11002=0_1100(прямой)=0_0011(обратный)
-15.2510=-1111.012=1_1111.01(прямой)=1_0000.10(обр.)

Слайд 6Троицкий Д.И. Информатика САПР 1 семестр
Дополнительный код числа
Дополнительный код строится только

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


Слайд 7Троицкий Д.И. Информатика САПР 1 семестр
Дополнительный код числа
На примере десятичного вычитания

двухразрядных чисел
предположим, что надо выполнить вычитание 84-32 /результат 52/. Дополним 32 до 100 /это «дополнение» равно 68/. Затем выполним сложение 84+68 /результат 152/. Единица «уходит», потому что рассматриваются двухразрядные десятичные числа.
Таким образом дополнительный код является математическим дополнением до основания системы счисления.

Слайд 8Троицкий Д.И. Информатика САПР 1 семестр
Дополнительный код числа
Дополнительный код отрицательного числа

отличается от обратного кода тем, что после замены цифр производится сложение результата с d-paзрядным числом, все разряды которого, кроме младшего, содержат нули, причём перенос из старшего разряда при сложении не выполняется.
Например, число в двоичной системе счисления равно +11,01. Пусть задано l=1, т=3, n=4; дополняя целую и дробную части нулями, запишем число в виде +011,0100. Прямой обратный и дополнительный коды заданного числа одинаковы 0 011 0100.
Для отрицательного числа —11,01 прямой код имеет вид 1011 0100, обратный код — 1 100 1011 и дополнительный — 1 100 1100.

Слайд 9Троицкий Д.И. Информатика САПР 1 семестр
Модифицированный код
При сложении чисел, меньших единицы,

может получиться результат, по абсолютной величине больший единицы, что ведет к искажению результатов вычислений. Переполнение разрядной сетки легко обнаружить, используя модифицированный прямой, модифицированный обратный или модифицированный дополнительный коды. Отличие модифицированных кодов от обычных заключается в том, что на изображение знака числа отводится два разряда. “Плюс” изображается двумя нулями, а ”минус” – двумя единицами.
Например, обратные модифицированные коды чисел  А1 = 0,11010 и  А = -0,11010  запишутся в виде  [А1]обр = 00,11010;   [А2]обр = 11,00101.

Слайд 10Троицкий Д.И. Информатика САПР 1 семестр
Систематические коды
Систематический код – код, содержащий

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

Слайд 11Троицкий Д.И. Информатика САПР 1 семестр
Систематические коды
Корректирующая способность кода связана также

с понятием кодового расстояния.
Кодовое расстояние d(A,B) кодовых комбинаций А и В определяется как вес такой третьей кодовой комбинации, которая получается сложением исходных комбинаций по модулю 2.

Что такое «сложение по модулю»?


Слайд 12Троицкий Д.И. Информатика САПР 1 семестр
Операция сложения по модулю ⊕
Это операция

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

Пример. Сложить по модулю 2 двоичные числа 10 и 11.

Сложение выполним поразрядно:
1) разряд единиц: 0 ⊕ 1 = 1;
2) разряд десятков: 1 ⊕ 1 = 0 (единица в старшем разряде теряется).

Таким образом, 102 ⊕ 112 = 012.


Слайд 13Троицкий Д.И. Информатика САПР 1 семестр
Пример: кодовое расстояние между комбинациями 110101

и 010111 равно 100010.

110101
010111
_______
100010

Вес кодовой комбинации V(A) – количество единиц, содержащихся в кодовой комбинации. V(100010)=2

Пример. Сложить по модулю 10 десятичные числа 59 и 152.

Сложение выполним поразрядно:

1) разряд единиц: 9 ⊕ 2 = 1;
2) разряд десятков: 5 ⊕ 5 = 0;
3) разряд сотен: 0 ⊕ 1 = 1.

Таким образом, 59 ⊕ 152 =101.


Слайд 14Троицкий Д.И. Информатика САПР 1 семестр
Кодирование по методу четности-нечетности
Примером кода с

обнаружением одной ошибки является код с битом чётности. Конструкция его такова: к исходному слову добавляется бит чётности. Если в исходном слове число единичек чётно, то значение этого бита 0 (для контроля нечетности - 1), если нечётно — 1 (для контроля нечетности - 0). Таким образом, допустимые слова этого кода имеют чётное количество единичек. Если получено слово с нечётным (для контроля нечетности - четным) количеством единичек, то при передаче произошла ошибка.
При этом допускается, что может возникнуть только одна ошибка. В самом деле, для случая четности правильным будет только половина возможных комбинаций. Чтобы одна допустимая комбинация превратилась в другую, должно возникнуть, по крайней мере, два нарушения или четное число нарушений.

Слайд 15Троицкий Д.И. Информатика САПР 1 семестр
Пример кодирования по методу четности
Контроль по

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

Слайд 16Троицкий Д.И. Информатика САПР 1 семестр
Применение кодирования по четности
Пример: кодирование информации

на перфоленте

5-й канал – бит четности. В каждой строке число единиц (отверстий) всегда нечетно


Слайд 17Троицкий Д.И. Информатика САПР 1 семестр
Улучшенное кодирование по методу четности
Можно представить

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

Слайд 18Троицкий Д.И. Информатика САПР 1 семестр
Увеличение избыточности информации приводит к тому,

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

Слайд 19Троицкий Д.И. Информатика САПР 1 семестр
Коды Хэмминга
Коды, предложенные американским ученым Р.

Хэммингом, обладают способностью не только обнаружить, но и исправить одиночные ошибки. Эти коды – систематические.
Обычно код Хэмминга описывается двумя целыми числами, например, (11,7) и используется при передаче 7-битных чисел. Такая запись говорит, что при передаче 7-битного кода используется 4 контрольных бита (7+4=11). При этом предполагается, что имела место ошибка в одном бите и что ошибка в двух или более битах существенно менее вероятна. С учетом этого исправление ошибки осуществляется с определенной вероятностью.

Richard Hamming 1915-1998


Слайд 20Троицкий Д.И. Информатика САПР 1 семестр
Коды Хэмминга
Рассмотрим пример передачи кода буквы

s = 1110011 с использованием кода Хэмминга (11,7).

Символами * помечены четыре позиции, где должны размещаться контрольные биты. Эти позиции определяются целой степенью 2 (1, 2, 4, 8 и т.д.). Контрольная сумма формируется путем выполнения операции сложения по модулю 2 над кодами позиций ненулевых битов. В данном случае это 11, 10, 9, 5 и 3.


Слайд 21Троицкий Д.И. Информатика САПР 1 семестр
Вычисляем контрольную сумму:
Получаем код:


Слайд 22Троицкий Д.И. Информатика САПР 1 семестр
Просуммируем снова коды позиций ненулевых битов

(т.е. кроме 7, 6 и 1) и получим нуль.

Это значит, что данные переданы верно


Слайд 23Троицкий Д.И. Информатика САПР 1 семестр
Рассмотрим два случая ошибок в одном

из битов посылки:

Просуммируем коды позиций ненулевых бит:

01112 = 710, следовательно ошибка произошла в седьмом бите.


Слайд 24Троицкий Д.И. Информатика САПР 1 семестр
Рассмотрим два случая ошибок в одном

из битов посылки:

Просуммируем коды позиций ненулевых бит:

01012 = 510, следовательно ошибка произошла в пятом бите.


Обратная связь

Если не удалось найти и скачать презентацию, Вы можете заказать его на нашем сайте. Мы постараемся найти нужный Вам материал и отправим по электронной почте. Не стесняйтесь обращаться к нам, если у вас возникли вопросы или пожелания:

Email: Нажмите что бы посмотреть 

Что такое ThePresentation.ru?

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


Для правообладателей

Яндекс.Метрика