Методические указания. Рассмотрим пример составления алгоритма, программы на языке Ассемблер и расчета ожидаемого результата для варианта №15* (таблица 12.1)

Рассмотрим пример составления алгоритма, программы на языке Ассемблер и расчета ожидаемого результата для варианта №15* (таблица 12.1).

1 Составим алгоритм решения задачи (рисунок 12.2).

 
 


               
   
 
 
   
 
   
 
   
 


Рисунок 12.2 – Схема алгоритма решения задачи к варианту №15* индивидуального
задания №1

2 Составим программу решения задачи на языке Ассемблер
(таблица 12.4).

Таблица 12. 4 – Пример линейной программы на языке Ассемблер к варианту №15* индивидуального задания №1

Адрес Метка Команда Операнд Машинный код Комментарий
    MVI A, 51 h 3E 51 ; A ← 51 h
    MVI D, 2C h 06 2C ; B ← 2C h
    LXI HL, 2020 h 21 20 20 ; HL ← 2020 h
    MVI M, 0Fh 36 0F ; M ← 0F h
200А   MOV C, A 4F ; C ← (A)
200B   MOV A, M 7E ; A ← (M)
200C   CMA   2F ; A ← ()
200D   XRA B A8 ; A ← (A) ⊕ (B)
200E   ANA C A1 ; A ← (A) ˄ (C)
200F   ADI 02 h C6 02 ; A ← (A) + 02 h
    STA 2021 h 32 21 20 ; М ← (A)
    HLT     ; Останов
Примечание –При загрузке исходных данных в ячейку памяти (ЯП) рекомендуется использовать косвенную адресацию, а при загрузке результата решения задачи – прямую.

3 Вычислим ожидаемый результат операции. Для удобства введем следующие обозначения: () ⊕ (B) = X1; X1 ˄ (A) = X2.

  (M1) = 0F(16) = 0000 1111(2)
() = F0(16) = 1111 0000(2)

(B) = 2C(16) = 0010 1100(2)

X1 = DC(16) = 1101 1100(2) ˄ (A) = 51(16) = 0101 0001(2)
+
X2 = 50(16) = 0101 0000(2)

02(16) = 0000 0010(2)

(M2) = 52(16) = 0101 0010(2)

ЛАБОРАТОРНАЯ РАБОТА №13


Понравилась статья? Добавь ее в закладку (CTRL+D) и не забудь поделиться с друзьями:  



double arrow
Сейчас читают про: