Добавил:
Upload Опубликованный материал нарушает ваши авторские права? Сообщите нам.
Вуз: Предмет: Файл:
АКР_ПП.doc
Скачиваний:
0
Добавлен:
01.05.2025
Размер:
2.01 Mб
Скачать

Міністерство освіти та науки України

Харківський радіотехнічний технікум

МЕТОДИЧНИЙ ПОСІБНИК

для виконання Адміністративної Контрольної Роботи (АКР)

з навчальної дисципліни

Периферійні пристрої”

для груп ОТ-311, ОТ-321, ОТ-331

зі спеціальності 5.05010201

Обслуговування комп’ютерних систем і мереж ”

Розробив викладач першої категорії Пуйденко В.О.

ЗМІСТ

  1. Пояснювальна записка……………………………………………………….3

1.1 Емуляція ділення цілих без знакових чисел ………………………........3

1.2 Десяткова корекція у периферійному мікро контролері РІС…………..5

1.2.1 Додавання у BCD – форматі……………………………………………...5

1.2.2 Віднімання у BCD – форматі……………………………………………..7

1.3 Циклічний надлишковий код, що коректує, 7,4 (CRC3)……………...12

1.3.1 Зв’язок коректованої здатності коду з кодовою відстанню…………...13

1.3.2 Побудова циклічного надлишкового коду 7,4………………………....16

1.4 Код Ріда – Соломона РС 31,16 (CRC15)………………………………….36

2 Склад адміністративної контрольної роботи…………………………..38

2.1 Завдання 1. Приклад виконання………………………………………...38

2.2 Завдання 2. Приклад виконання………………………………………...41

2.3 Завдання 3. Приклад виконання………………………………………...48

2.4 Завдання 4. Приклад виконання………………………………………...54

1 Пояснювальна записка

1.1 Емуляція ділення цілих без знакових чисел

У системі команд периферійного мікро контролера родини РІС 16С7ХХ відсутня команда ділення, тож програміст мусить програмно реалізовувати алгоритм ділення. Слід зазначити, що алгоритм ділення здійснюється по досить відомій схемі: обнуляється поточний залишок і старший біт числа, що ділиться сунеться у молодший біт поточного залишку у бік старших розрядів. Далі із значення поточного залишку віднімається дільник. Якщо поточний залишок негативний, то він відновлюється шляхом додавання до нього значення дільника. Значення добутку формується із поточного значення прапорця carry. Алгоритм ділення з відновлення негативних залишків закінчується після аналізу всіх розрядів числа, що ділиться.

Текст програми ділення цілих без знакових чисел має наступний вигляд:

;------------------------------------------------------------

w equ 0; приймач інформації регістр W

f equ 1; приймач інформації регістр R

;------------------------------------------------------------

r0 equ 0c; визначення

r1 equ 0d; адрес

r2 equ 0e; регістрового

r3 equ 0f; файлу

r4 equ 10; мікроконтролера PIC 16C71

;------------------------------------------------------------

status equ 03; визначення прапорців

carry equ 0; carry та

zero equ 2; zero у регістрі status

;------------------------------------------------------------

dividend equ 0b;

divider equ 03;

;------------------------------------------------------------

movlw 8; Організація лічильника

movwf r0; зсувів ділимого

movlw 0; Занулення

movwf r1; залишку

movlw 0; Занулення

movwf r2; приватного

movlw dividend; Завантаження ділимого

movwf r3; у регістр r3

movlw divider; Завантаження дільника

movwf r4; у регістр r4

cycle bcf status, carry; скидання прапорця carry

rlf r3; передача молодшого біту числа, ділиться

rlf r1; в обнулений залишок

movf r4,w; передача дільника у регістр w

subwf r1,w; із значення залишку віднімається значення дільника

btfss status, carry; аналіз прапорця carry

call recovery; передача управління на процедуру відновлення негативного ;залишку

movwf r1; передача значення залишку у регістр r1

rlf r2; формування із значення прапорця carry значення приватного

decfsz r0,f; декремент лічильника зсувів числа, що ділиться

goto cycle; передача управління на наступний програмний прохід

goto finish; передача управління на кінець програми

recovery addwf r4,w;

btfsc status, carry;

bcf status, carry;

return;

finish

end

1.2 Десяткова корекція у мікро контролері ріс

Сучасні мікропроцесори платформи х86 та периферійні мікро контролери припускають два представлення десяткових чисел: упакований BCD – формат та не упакований ASCII - формат. У BCD – форматі байт містить дві десяткові цифри (по одній у кожній тетраді), які представлені у коді 8421.