- •Лабораторна робота № 1. «Вивчення програмного пакета tasm32»
- •Короткі теоретичні відомості:
- •Програмна модель:
- •Структура програми
- •Група команд передачі даних
- •Інструкція по роботі з програмним пакетом tasm32
- •Завдання
- •Лабораторна робота № 2 tasm32. «Вивчення групи арифметичних команд»
- •Короткі теоретичні відомості: Частина 1
- •Частина 2
- •Лабораторна робота № 3. «Вивчення групи логічних команд»
- •Короткі теоретичні відомості:
- •Завдання
- •Лабораторна робота №4. «Вивчення груп команд безумовних та умовних переходів та команд управління циклом»
- •Короткі теоретичні відомості:
- •Завдання
- •Лабораторна робота №5. «Вивчення команд роботи з підпрограмами»
- •Короткі теоретичні відомості:
- •Завдання
- •Лабораторна робота №6. «Вивчення груп команд порівняння та логічних зсувів»
- •Короткі теоретичні відомості:
- •Завдання
Завдання
Варіант 1
Скласти алгоритм та програму заповнення послідовністю констант, починаючи з 1H, області пам’яті довжиною FH байт з початковою адресою ds:0000H, якщо число в акумуляторі – непарне. У протилежному випадку цю область заповнити константою F5H.
Варіант 2
Занести у область пам’яті ds:0008H – ds:0027H послідовність констант 0H – 1FH та знайти серед них третє по рахунку парне число, записати це число у регістр CL.
Варіант 3
Скласти алгоритм та програму заповнення області пам’яті ds:0008H – ds:0057H послідовність чисел від 0H до 49H, якщо число в акумуляторі не від’ємне. Вивести у комірку пам’яті ds:0058H число, яке знаходиться в акумуляторі.
Варіант 4
Скласти алгоритм та програму заповнення області пам’яті ds:0018H - ds:001FH константою F3H якщо число в акумуляторі – парне, у протилежному випадку константою 11H. Вивести у комірку пам’яті ds:0020H число, яке знаходиться в акумуляторі.
Варіант 5
Скласти алгоритм та програму заповнення області пам’яті ds:0020H - ds:0027H константою E7H якщо число в акумуляторі – від’ємне, у протилежному випадку константою CEH. Вивести у комірку пам’яті ds:002H число, яке знаходиться в акумуляторі.
Варіант 6
Скласти алгоритм та програму заповнення області пам’яті довжиною 17H байт з початковою адресою ds:0008H константою D1H якщо в акумуляторі нуль, у протилежному випадку в цю область пам’яті внести послідовність чисел починаючи 1H.
Варіант 7
Занести у область пам’яті ds:0000H – ds:0017H послідовність констант 70H – 87H та знайти серед них друге по рахунку від’ємне число, записати це число у регістр BL.
Варіант 8
Скласти алгоритм та програму заповнення області пам’яті довжиною 25H байт з початковою адресою ds:0000H константою E5H якщо в акумуляторі нуль, у протилежному випадку в цю область пам’яті внести послідовність чисел починаючи 1H. Вивести у комірку пам’яті ds:0026H число, яке знаходиться в акумуляторі.
Варіант 9
Скласти алгоритм та програму заповнення області пам’яті довжиною 20H байт з початковою адресою ds:0000H послідовність констант 0H – 20H а в область пам’яті ds:0020H – ds:0040H послідовність констант 20H – 0H.
Варіант 10
Скласти алгоритм та програму занесення в область пам’яті ds:0008H – ds:0026H послідовність констант 70H – 8FH та знайти серед них четверте по рахунку від’ємне число, записати це число у регістр ds:0018H.
Лабораторна робота №5. «Вивчення команд роботи з підпрограмами»
Мета роботи: «Вивчити особливості виконання команд виклику підпрограми та повернення з підпрограм. Розробка алгоритму, складання та налагодження програми з використанням цих команд».
Короткі теоретичні відомості:
При розробці складних програм дуже часто доводиться виконувати однотипні дії, але з різними значеннями. Наприклад, оброблювати показання датчиків, перетворювати числа з двійкової системи у десяткову і т.д. Найбільш просто це зробити з використанням підпрограм.
Мнемокод |
Операнд |
Коментар |
CALL |
ADR (мітка) |
Виконується безумовний перехід к підпрограмі за адресою ADR або на мітку. ADR→(IP), (IP)→(SP) |
RET |
|
Виконується безумовне повернення з підпрограми (SP)→(IP) |
