15287

Налагодження програми мовою Асемблер з використанням логічних операцій

Лабораторная работа

Информатика, кибернетика и программирование

Налагодження програми мовою Асемблер з використанням логічних операцій Лабораторна робота № 14 Тема: Технологія та прийоми програмування мовою Асемблера. Мета роботи: Набути навичок застосування логічних команд при програмуванні мов...

Украинкский

2013-06-11

76 KB

2 чел.

PAGE  4

Налагодження програми мовою Асемблер з використанням логічних операцій

Лабораторна робота № 14

Тема: Технологія та прийоми програмування мовою Асемблера.

  •  Мета роботи: Набути навичок застосування логічних команд при програмуванні мовою Асемблера. Навчитися визначати та встановлювати в потрібний стан значення окремих бітів в регістрах мікропроцесора та в комірках памяті, розв’язувати логічні рівняння тощо.

  

  1.  Короткі теоретичні відомості

Логічні операції, що підтримуються мікропроцесором, ми вивчали в рамках лабораторної роботи №5, тому в даній лабораторній роботі ми розглянемо одну з практичних задач, які мають місце при реалізації задач керування різними пристроями з використанням мікропроцесорної техніки. Це задача визначення логічного значення окремого біту в байті чи слові, а також встановлення окремого біту в байті чи слові при збереженні незмінними значень решти бітів байту чи слова.

Для визначення значення окремого біту в байті може бути застосований такий механізм: реалізуємо функцію логічного множення байту, в якому маємо визначити значення, наприклад, 3-го біту на число з одиницею у третьому біті і нулями у решті бітах. Отриманий результат (істинне значення третього біту і нулі  в решті бітах) зсуваємо на три біти вправо, щоб помістити  значення третього біту в нульовий розряд. Далі тестуємо значення нульового біту, наприклад, командою TEST.

Для встановлення в одиницю потрібного номера біту зі збереженням значень решти бітів можна застосувати операцію логічного додавання байту, в якому потрібно встановити біт, з числом, що має значення одиниці у відповідному номері біту, який треба встановити і нулі у решті бітах.

Для скидання в нуль потрібного номера біту зі збереженням значень решти бітів можна застосувати операцію логічного множення байту, в якому потрібно скинути в нуль біт, з числом, що має значення нуля у відповідному номері біту, який треба скинути і одиниці у решті бітах.

  1.  Постановка завдання

  1.  Скласти програму мовою асемблера з використанням логічних операцій, що забезпечує:
  •  визначення значення заданого номера розряду байту (слова), що знаходиться у вказаному місці відповідно до індивідуального завдання;
  •  встановлення заданого номеру розряду байту (слова) в одиницю;
  •  скидання заданого номеру розряду байту (слова) в нуль;
  •  перевірку правильності виконання двох попередніх операцій.
    1.  Використовуючи середовище емулятора МП і8086, створити і налагодити проект асемблерної програми, складеної відповідно до п.2.1 і індивідуального завдання.
    2.  Використовуючи середовище емулятора скласти лістинг програми (табл..1)

Таблиця 1 Лістинг програми

Зміщення

Код (Hex)

Мнемокод команди

К-сть байт

Коментар

100

101

102

  1.   Використовуючи покроковий режим роботи емулятора, проаналізувати хід виконання програми. Записати двійкове значення байту (слова) до і після коригування значень його бітів.

  1.  Варіанти індивідуальних завдань

  1.  Варіанти індивідуальних завдань наведені у табл..2.

Таблиця 2 Варіанти індивідуальних завдань

вар.

Число

Тип числа

Місцезнах.

числа

№ біту

Визначити

Встановити

в «1»

Скинути в «0»

1

A5h

db

BH

5

6

2

2

53B6h

dw

AX

12

13

3

3

8Dh

db

AL

5

1

7

4

C6C6h

dw

BX

14

4

10

5

55h

db

mem

4

3

2

6

A5A5h

dw

mem

10

4

15

7

66h

db

DL

4

3

5

8

630Fh

dw

DX

8

6

14

9

C8h

db

CH

6

1

3

10

F182h

dw

CX

12

4

15

11

E4h

db

mem

7

0

6

12

70A2h

dw

mem

9

3

13

13

B3h

db

mem

3

6

1

14

D0A5h

dw

AX

11

9

2

15

6Eh

db

AH

3

4

5

  1.  Методичні вказівки

  1.  Увійти в середовище емулятора Emu8086.
    1.  Створити новий проект типу “com” під власним іменем.
    2.  У створеному проекті набрати текст програми відповідно до п.2.1 і індивідуального завдання.
    3.  Скомпілювати створений проект.
    4.  Проаналізувати повідомлення про помилки, якщо такі мають місце. Записати повідомлення у звіт до лабораторної роботи. Пояснити причини виникнення помилок і вказати шляхи їх усунення.
    5.  Після успішного завершення процедури компілювання проекту перейти до аналізу роботи створеної програми відповідно до п.п.2.3, 2.4, використовуючи покроковий режим роботи емулятора.

  1.  Зміст звіту

  1.  Назва теми.
    1.  Мета роботи.
    2.  Індивідуальне завдання.
    3.  Лістинг програми відповідно до п.2.3 з відповідними коментарями.
    4.  Записати отримані результати відповідно до п.2.4. 
    5.  Висновки, в яких звернути увагу на особливості виконання застосованих в програмі команд.

  1.  Контрольні запитання

  1.  Яким чином можна визначити значення заданого номера біту?
    1.  Яким чином можна встановити в «1» значення заданого номера біту?
    2.  Яким чином можна скинути в «0» значення заданого номера біту?

  1.  Джерела інформації

  1.  Ю.І. Якименко, Т.О. Терещенко, Є.І. Сокол та ін. Мікропроцесорна техніка: Підручник. – Київ. – ІВЦ «Видавництво «Політехніка». – 2004. – 439 с.
    1.  Юров В., Хорошенко С. Assembler: учебный курс – СПб: Питер Ком, 1999. – 672 с.


 

А также другие работы, которые могут Вас заинтересовать

40157. ОСНОВНЫЕ ХАРАКТЕРИСТИКИ И СТАТИСТИЧЕСКИЕ МОДЕЛИ СЛУЧАЙНЫХ СИГНАЛОВ И ПОМЕХ 2.32 MB
  Для стационарного случайного процесса двумерная плотность вероятности и соответственно корреляционная функция зависят не от t1 и t2 в отдельности а только от их разности = t2 t1. В соответствии с этим корреляционная функция стационарного процесса определяется выражением 3.1 где математическое ожидание стационарного процесса; х1 х2 возможные значения случайного процесса соответственно в моменты времени t1 t2 ; = t2 t1 интервал времени между сечениями; двумерная...
40158. ВРЕМЕННОЙ И СПЕКТРАЛЬНЫЙ АНАЛИЗ ПРОХОЖДЕНИЯ СЛУЧАЙНОГО ПРОЦЕССА ЧЕРЕЗ ЛИНЕЙНЫЕ СИСТЕМЫ 1.39 MB
  3 справедливы в полной мере если xt есть реализация случайного процесса t. Но эти формулы служат для решения основной задачи анализа линейной цепи при случайных воздействиях заключающейся в нахождении вероятностных характеристик выходного случайного процесса t если известны вероятностные характеристики входного случайного воздействия и определена цепь посредством задания порядка и коэффициентов дифференциального уравнения или импульсной характеристики. Требуется найти математическое ожидание t и корреляционную функцию...
40159. ОПТИМАЛЬНЫЙ РАДИОПРИЕМ КАК СТАТИСТИЧЕСКАЯ ЗАДАЧА 548 KB
  Введение в теорию оптимального радиоприема ОПТИМАЛЬНЫЙ РАДИОПРИЕМ КАК СТАТИСТИЧЕСКАЯ ЗАДАЧА Помехоустойчивость и ее основные задачи Особенность радиоприёма состоит в том что наряду с сигналами через антенную систему в приёмное устройство поступают разнообразные помехи. Количественно помехоустойчивость оценивается с помощью различных показателей использующих вероятностное описание помех и сигнала. Например применяются такие показатели как отношение сигнал шум на входе и выходе приёмного устройства вероятность правильного обнаружения...
40160. ИМПУЛЬСНЫЕ УСИЛИТЕЛИ МОЩНОСТИ 340.5 KB
  Основными определяющими факторами являются длительность фронта и среза импульса коллекторного перехода стокового тока транзистора и тип нагрузки активной и активно индуктивной. Первый способ применяется когда возможно произвольно варьировать параметрами нагрузки. Тогда параметры нагрузки выбираются таким образом чтобы к моменту коммутации автоматически выполнялось условие Uкл=0 или Iкл=0. Второй способ используется если параметры нагрузки строго заданы и состоит во введении в схему дополнительных цепей искусственно разносящих во...
40161. ЦИФРОВАЯ ЭЛЕКТРОНИКА. МАТЕМАТИЧЕСКОЕ ОПИСАНИЕ ЦИФРОВЫХ УСТРОЙСТВ 295 KB
  2 Основные способы записи функций алгебры логики ФАЛ Функции алгебры логики ФАЛ зависимость выходных переменных Zi выраженная через совокупность входных переменных х1х2хn. Логические устройства работа которых описывается с помощью ФАЛ. 1 Описание ФАЛ в виде таблице истинности табл. Описание ФАЛ в виде алгебраического выражения: а логическое сложение ИЛИ дизъюнкция б логическое умножение И конъюнкция в отрицание инверсия НЕ если х = 1 то ;если х = 0 то Дизъюнктивная нормальная форма ДНФ ...
40162. ОСНОВНЫЕ ЛОГИЧЕСКИЕ ЭЛЕМЕНТЫ 378 KB
  По принципу действия: комбинационные – автоматы без памяти, входные сигналы которых определяются действующей на входе комбинацией переменных; последовательные – автоматы с памятью, выходные сигналы которых определяются не только действующей комбинацией переменных, но и предыдущей.
40163. МИНИМИЗАЦИЯ ЛОГИЧЕСКИХ УСТРОЙСТВ 518 KB
  Минимизация с применением карт Вейча Карты Вейча это прямоугольная таблица число клеток в которой для ФАЛ n переменных равно 2n каждой из клеток поставлен в соответствие набор входных переменных причем рядом расположенным клеткам соответствуют соседние наборы входных переменных а в самих клетках записаны значения функции определенные для этих кодов. На карте Вейча ФАЛ n переменных выделяют прямоугольные области объединяющие выбранные значения функции 0 или 1. Каждой из выделенных областей соответствует k куб исходной ФАЛ...
40164. КОМБИНАЦИОННЫЕ ЛОГИЧЕСКИЕ УСТРОЙСТВА 587.5 KB
  2 При построении логических устройств на реальной элементной базе возникают следующие задачи: а число входов ЛЭ больше числа переменных входящих в реализуемую с их помощью ФАЛ; б число входов ЛЭ меньше числа переменных входящих в реализуемую с их помощью ФАЛ. Решение задач: а Число входов больше требуемого. Следовательно что уменьшит фактическое число входов ЛЭ можно подавая на неиспользуемые входы сигналы пассивных логических констант: 0 для элементов ИЛИНЕ 1 для элементов ИНЕ; б число входов ЛЭ меньше требуемого. Сравнивая...
40165. ПОСЛЕДОВАТЕЛЬНОСТНЫЕ ЛОГИЧЕСКИЕ УСТРОЙСТВА 658.5 KB
  По типу используемых информационных входов триггеры классифицируются: RS D T JK VD и VT триггеры где R раздельный вход сброса триггера Q=0; К вход сброса универсального триггера Q=0; J вход установки универсального триггера Q=1; Т счетный вход триггера ; D информационный вход переключения триггера в состояние соответствующее логическому уровню на этом входе; С управляющий или синхронизирующий вход; V вход блокирования работы триггера и он долго сохраняет информацию. Для переключения триггера на его прямой вход...