
- •Лабораторна робота № 1. «Вивчення програмного пакета tasm32»
- •Короткі теоретичні відомості:
- •Програмна модель:
- •Структура програми
- •Група команд передачі даних
- •Інструкція по роботі з програмним пакетом tasm32
- •Завдання
- •Лабораторна робота № 2 tasm32. «Вивчення групи арифметичних команд»
- •Короткі теоретичні відомості: Частина 1
- •Частина 2
- •Лабораторна робота № 3. «Вивчення групи логічних команд»
- •Короткі теоретичні відомості:
- •Завдання
- •Лабораторна робота №4. «Вивчення груп команд безумовних та умовних переходів та команд управління циклом»
- •Короткі теоретичні відомості:
- •Завдання
- •Лабораторна робота №5. «Вивчення команд роботи з підпрограмами»
- •Короткі теоретичні відомості:
- •Завдання
- •Лабораторна робота №6. «Вивчення груп команд порівняння та логічних зсувів»
- •Короткі теоретичні відомості:
- •Завдання
Міністерство освіти і науки, молоді та спорту України
Технікум промислової автоматики
Одеської державної академії холоду
«ЗАТВЕРДЖУЮ»
Директор ТПА ОДАХ
_________________ Стамболцян В.О.
«__» ___________ 2012 р.
Методичні вказівки до виконання лабораторних робіт
з предмета «Мікропроцесорна техніка»
(частина 1)
для спеціальності 5.05020201 «Монтаж, обслуговування засобів і систем
автоматизації технологічного виробництва»
Одеса – 2012
Розроблено викладачем ТПА ОДАХ Букарос А.Ю.
Рецензент: доцент кафедри електротехніки та електронних пристроїв ОДАХ, к.т.н.
______________ /Дорохольський М.Л./
«__» ___________ 2012 р.
Розглянуто та схвалено для застосування в навчальному процесі цикловою комісією автоматики та електротехнічних дисциплін.
Протокол №___ від ________________ 2012 р.
Голова комісії __________________ Чумаков А.О.
Зміст
Лабораторна робота № 1. «Вивчення програмного пакета TASM32» 4
Лабораторна робота № 2 TASM32. «Вивчення групи арифметичних команд» 10
Лабораторна робота № 3. «Вивчення групи логічних команд» 18
Лабораторна робота №4. «Вивчення груп команд безумовних та умовних переходів та команд управління циклом» 20
Лабораторна робота №5. «Вивчення команд роботи з підпрограмами» 25
Лабораторна робота №6. «Вивчення груп команд порівняння та логічних зсувів» 30
Лабораторна робота № 1. «Вивчення програмного пакета tasm32»
Мета роботи: За допомогою програмного пакета TASM32 вивчити програмну модель мікропроцесора і8086 та особливості виконання групи команд пересилань, набути навички налагодження програм.
Короткі теоретичні відомості:
Асемблер – мова низького рівня наближена до апаратних засобів комп’ютера та його натуральним можливостям. Наслідком цього є те, що вона індивідуальна для кожного сімейства ЕОМ.
Програми, написані на мові асемблера, відрізняються високою ефективністю, тобто мінімальним об’ємом та максимальною швидкістю дії. Ця обставина зумовила широке використання мови у тих випадках, коли швидкість роботи програми або пам’ять яка витрачається нею мають вирішальне значення. Деякі класи програм (наприклад, програми драйверів пристроїв) відрізняються жорсткою структурою і потребують для свого складання обов’язкового використання мови асемблера. З іншого боку, оскільки сучасні системи програмування дозволяють об’єднувати в одну виконавчу програму фрагменти, написанні на різних мовах, широко практикується складання комбінованих програм, у яких основна частина написана на мові високого рівня, а найбільш критичні частини на асемблері. Може використовуватись зворотний метод, коли в програму на мові асемблера вставляють фрагменти для виконання щодо складних логічних або математичних перетворень, записаних на мові високого рівня.
Проте, окрім споживчих якостей, мова асемблера має ще й значну методичну цінність, відображаючи архітектурні особливості та режими роботи використовуваного в комп'ютері МП. Мова асемблера надає унікальну можливість вивчення машини на "низькому рівні", освоєння того, що і як вміє робити апаратура комп'ютера і що вносить в його роботу операційна система.
Програмна модель:
В програмну модель входять вузли доступні програмісту.
Процесор містить 12 шістнадцятирозрядних програмно-адресованих регістрів, які прийнято об’єднувати у три групи: РЗП, регістри-покажчики та сегментні регістри. Крім того, у склад процесора входять лічильник команд та регістр прапорів.
РЗП (регістр загального призначення) використовують для тимчасового зберігання будь-яких об’єктів (даних, адрес) та для виконання над ними необхідних операцій. При цьому регістри допускають незалежне звернення до старших (AH, BH, CH, DH) та молодших половин (AL, BL, CL, DL).
Основне призначення індексних регістрів SI і DI зберігати індекси (зміщення) відносно деякої бази (тобто початку масиву) при вибірці операнда з пам’яті.
Регістр BP, як правило, слугує вказівником бази при роботі з даними в стекових структурах.
Регістр SP використовується виключно як вказівник вершини стека.
Регістри-покажчики на відміну від РЗП не допускають побайтову адресацію.
Сегментні регістри зберігають початкові адреси сегментів програми та, тим самим, забезпечують можливість звертатись до цих сегментів.
Регістр IP вказує на відносну адресу команди.
Регістр прапорів містить інформацію про поточний стан МП.
15 |
14 |
13 |
12 |
11 |
10 |
9 |
8 |
7 |
6 |
5 |
4 |
3 |
2 |
1 |
0 |
X |
X |
X |
X |
OF |
DF |
IF |
TF |
SF |
ZF |
X |
AF |
X |
PF |
X |
CF |
CF - прапор переносу, PF - прапор паритету (парності), AF - прапор додаткового переносу (біт 3), ZF - прапор нуля, SF - прапор знака, TF - керуючий прапор трасування, IF - керуючий прапор дозволу переривань, DF - керуючий прапор напряму, OF - прапор переповнення.