Добавил:
Upload Опубликованный материал нарушает ваши авторские права? Сообщите нам.
Вуз: Предмет: Файл:
Методичка_СистПрогр_ЛР.DOC
Скачиваний:
0
Добавлен:
01.04.2025
Размер:
2.16 Mб
Скачать

17.3 Завдання на роботу

1 Написати програму на мові асемблер, для виконання завдання відповідно до варіанту (таблиця 4.2):

Таблиця 17.2 – Варіанти завдань

Варіант

Завдання

1

2

1

Зсунути трибайтне число, розміщене по адресу [100h] вліво до першого одиничного біта

2

Зсунути трибайтне число, розміщене по адресу [100h] вправо до першого одиничного біта

3

Зсунути трибайтне число, розміщене по адресу [100h] вліво до першого нульового біта

4

Зсунути трибайтне число, розміщене по адресу [100h] вправо до першого нульового біта

5

Якщо в комірці пам’яті, розміщеної по адресу [100h] записане число нуль, то записати в дану комірку число 114. Інакше – інкрементувати значення в даній комірці

6

Якщо в комірці пам’яті, розміщеної по адресу [100h] записане число з парною кількістю одиничних бітів, то записати в дану комірку число 103. Інакше – декрементувати значення в даній комірці

7

Якщо в комірці пам’яті, розміщеної по адресу [100h] записане число з непарною кількістю одиничних бітів, то записати в дану комірку число 89. Інакше – інвертувати його

Продовження таблиці 17.2

1

2

8

Якщо в комірці пам’яті, розміщеної по адресу [100h] записане додатнє число, то змінити його знак (перевести в додатковий код).

9

Якщо в комірці пам’яті, розміщеної по адресу [100h] записане від’ємне число, то змінити його знак (перевести з додаткового коду).

10

Якщо число в комірці пам’яті, розміщеної по адресу [100h], ділиться на 2 без остачі, то поділити його на 4, інакше – помножити на 2.

11

Переслати 100 байт пам’яті починаючи з адреси [100h] в нову область пам’яті, яка починається по адресу [300h]

12

Переслати 80 байт пам’яті починаючи з адреси [100h] в нову область пам’яті, яка починається по адресу [200h]

13

Якщо значення, розміщені в комірках пам’яті по адресах [100h] та [101h] мають однаковий знак, то додати їх, інакше – перемножити. Результат розмістити по адресу [105h] виділивши потрібну кількість комірок пам’яті

14

Якщо обидва значення, розміщені в комірках пам’яті по адресах [100h] та [101h] діляться на 2 без остачі, то додати їх, інакше – перемножити. Результат розмістити по адресу [105h] виділивши потрібну кількість комірок пам’яті

15

Якщо в молодшій тетраді числа, розміщеного в комірці пам’яті по адресу [100h] є парна кількість одиничних бітів, то інкрементувати його, інакше – декрементувати

2 Виконати трасування програми в середовищі Turbo Debugger. Після виконання кожної команди процесора відображати значення регістрів що змінилися.

3 Зробити висновки за результатами роботи.

Примітка. Стан регістрів і комірок пам’яті фіксувати після виконання кожної операції до коду завершення програми.