ImitatorOKOD / Описание_Формула1
.docРазработать программу, реализующую вычисления, заданные формулой
Y = (A+B)*(C-D)
Требования к размещению данных:
Переменные A,B.C,D и результат вычислений Y должны размещаться в памяти.
Обозначения переменных для хранения промежуточных результатов:
S=A+B
Кодирование исходных данных и их размещение в сегменте данных
Имя переменной |
Десятичное значение |
16-й дополнительный код |
Смещение от начала сегмента данных |
A |
27 |
0001b |
00 |
B |
-2 |
ffffe |
01 |
S |
25 |
00019 |
02 |
C |
30 |
0001e |
03 |
D |
32 |
00020 |
04 |
Y |
-50 |
fffce |
05 |
Примечание: Для переменных S и Y приведены результаты, которые должны быть получены после выполнения программы.
Размещение программы в памяти
Адрес ячейки |
Содержимое |
Смысл команды или данных |
СЕГМЕНТ КОДА |
||
000 |
71100 |
Загрузка в P1 значения переменной A |
001 |
11101 |
Вычисление A+B |
002 |
81102 |
Запоминание A+B в S |
003 |
71103 |
Загрузка в P1 значения переменной C |
004 |
21104 |
Вычисление C-D |
005 |
31102 |
Вычисление (P1)*S |
006 |
81105 |
Запоминание результата в Y |
007 |
a0000 |
СТОП |
СЕГМЕНТ ДАННЫХ |
||
008 |
0001b |
Код переменной A |
009 |
ffffe |
Код переменной B |
00a |
00000 |
Код переменной S |
00b |
0001e |
Код переменной C |
00c |
00020 |
Код переменной D |
00d |
00000 |
Код переменной Y |