Разработка программы кодирования по алгоритму Хемминга

Автор работы: Пользователь скрыл имя, 27 Декабря 2011 в 13:53, курсовая работа

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

В середине 1940-х годов Ричард Хэмминг работал в знаменитых Лабораториях Белла на счётной машине «Bell Model V». Это была электромеханическая машина, использующая релейные блоки, скорость которых была очень низка: один оборот за несколько секунд. Данные вводились в машину с помощью перфокарт, и поэтому в процессе чтения часто происходили ошибки. В рабочие дни использовались специальные коды, чтобы обнаруживать и исправлять найденные ошибки, при этом оператор узнавал об ошибке по свечению лампочек, исправлял и запускал машину.

Содержание работы

Введение.................................................................................................................4
1 Принцип построения корректирующего кода Хемминга...............................5
2 Описание алгоритма работы программы. Блок схема....................................6
3 Текст программы с распределением ячеек памяти, мнемокодами, машинными кодами и комментариями................................................................7
4 Примеры моделирования в Proteus...................................................................9
5 Контрольные примеры для исходных сообщений.........................................10
Заключение...........................................................................................................11
Список использованных источников.................................................................12

Содержимое работы - 1 файл

К.Р.,ЭПУ (Ожерельев).docx

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

      EOR R20,R23

      EOR R20,R21   ;вычесление второго контрольного бита

      STS 0x0997,R20;запись второго контрольного  бита в ячейку ОЗУ 0997h

      LDS R20,0x0995;запись в регистр R20 первого  информационного бита

      EOR R20,R21

      EOR R20,R22   ;вычесление третьего контрольного бита

      LSL R20

      LSL R20

      LSL R20   ;сдвиг влево третьего контрольного бита в третий разряд

      LSL R21   ;сдвиг влево второго информационного бита в первый разряд

      LSL R22

      LSL R22   ;сдвиг влево третьего информационного бита во второй разряд

      LSL R23

      LSL R23

      LSL R23

      LSL R23  ;сдвиг влево 4-го информационного бита в 4-й разряд

      OR R20,R21

      OR R20,R22

      OR R20,R23 ;начало формирования кода Хемминга (объединение 2го,3го,4го информационных битов с 3им контрольным)

      LDS R21,0x0995;запись в регистр R21 первого  информационного бита

      OR R20,R21    ;слияние первого информационного бита с кодом Хемминга

      LDS R21,0x0996;запись в регистр R21 первого  контрольного бита

      LSL R21

      LSL R21

      LSL R21

      LSL R21

      LSL R21

      LSL R21       ;сдвиг влево первого контрольного бита в шестой разряд

      OR R20,R21    ;слияние первого контрольного бита с кодом Хемминга

      LDS R21,0x0997;запись в регистр R21 второго  контрольного бита

      LSL R21

      LSL R21

      LSL R21

      LSL R21

      LSL R21       ;сдвиг влево второго контрольного бита в пятый разряд

      OR R20,R21    ;завершение формирования кода Хемминга

      STS 0x0994,R20;запись кода Хемминга в  ячейку ОЗУ 0994h

      OUT PORTB,R20 ;вывод кода Хемминга на индикаторы

      RJMP S        ;возврат на  опрос порта А 
 
 
 
 
 

Для исходного кода получаем:

   Рисунок 2 – Пример для исходного кода  

   Получили  код Хемминга в виде:  

   Для исходного кода получаем:

   Рисунок 2 – Пример для исходного кода  

   Получили  код Хемминга в виде: 
 
 
 
 
 
 
 

   

    Вычислим контрольные символы по формулам (3,4,5), пользуясь таблицей 3. 

Таблица 3 – Таблица истинности “исключающее или -

     
0 0 0
0 1 1
1 0 1
1 1 0
 

   Для исходного кода получаем: 
 
 
 

   Получили  код Хемминга в виде:  
 

   Для исходного кода получаем: 
 
 
 

   Получили  код Хемминга в виде: 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 

     В данной курсовой работе была разработана программа кодирования четырехразрядной последовательности информационных символов в семиразрядный код Хемминга на языке ассемблера для микропроцессорного комплекта ATMEGA128. Рассмотрены принципы построения корректирующего кода Хемминга. Вычислены контрольные примеры для исходных сообщений:. 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 

      Список  использованных источников 

   1 Токхайм, Р.Д. Микропроцессоры: Курс и упражнения / Токхайм, Р.Д. пер. с англ.; Под ред. Грасевича З.Н. – М.: Энергоатомиздат, 1988. – 336 с.

Информация о работе Разработка программы кодирования по алгоритму Хемминга