Уважаемые коллеги! Предлагаем вам разработку программного обеспечения под ключ.
Опытные программисты сделают для вас мобильное приложение, нейронную сеть, систему искусственного интеллекта, SaaS-сервис, производственную систему, внедрят или разработают ERP/CRM, запустят стартап.
Сферы - промышленность, ритейл, производственные компании, стартапы, финансы и другие направления.
Языки программирования: Java, PHP, Ruby, C++, .NET, Python, Go, Kotlin, Swift, React Native, Flutter и многие другие.
Всегда на связи. Соблюдаем сроки. Предложим адекватную конкурентную цену.
Заходите к нам на сайт и пишите, с удовольствием вам во всем поможем.
Задание 1
Сложить два числа : 99 (63) и 98 (62). Результат вычисления переслать в регистр D.
адрес |
мнемо код |
машинный код |
комментарии |
длина команды |
8200 |
MVI A |
3E |
Запись числа 99 в регистр А |
2 байта |
8201 |
63 |
Число 99 в шестнадцатирич. коде |
||
8202 |
MVI B |
06 |
Запись числа 98 в регистр В |
2 байта |
8203 |
62 |
Число 98 в шестнадцатирич. коде |
||
8204 |
ADD B |
80 |
Сложение А с В |
1 байт |
8205 |
MOV D,A |
57 |
Пересылка из А в D |
1 байт |
8206 |
RST 32 |
E7 |
Завершение программы |
1 байт |
Протокол: после сложения содержимое регистра D = С5 = 197
Задание 2
Записать число 99 (63) в ячейку памяти 8040; число 98 (62) в аккумулятор; произвести сложение этих чисел; результат сложения поместить по адресу 8041.
адрес |
мнемо код |
машинный код |
комментарии |
длина команды |
8200 |
LXI H, 8040 |
21 |
Загружаем адрес 8040 в регистровую пару HL |
3 байта |
8201 |
40 |
|||
8202 |
80 |
|||
8203 |
MVI M,N |
36 |
Записываем число N в ячейку памяти по адресу, указанному в HL (8040) |
2 байта |
8204 |
63 |
|||
8205 |
MVI A, N-1 |
3E |
Запись числа N-1 в аккумулятор |
2 байта |
8206 |
62 |
|||
8207 |
ADD M |
86 |
Суммирование содержимого ячейки памяти 8040 с аккумулятора |
1 байт |
8208 |
INX H |
23 |
Инкремент HL (+1) |
1 байт |
8209 |
MOV M, A |
77 |
Пересылка сод. аккум. в ячейку памяти, указ. в HL |
1 байт |
8210 |
RST 32 |
E7 |
Завершение программы |
1 байт |
Протокол: в ячейке памяти 8041 содержится число C5 = 197
Задание 3
Записать число 495 (1EF) в регистровую пару HL; число 693 (2B5) в регистровую пару DE; произвести обмен числами; информацию, находящуюся в регистре D поместить в ячейку памяти по адресу 8140.
адрес |
мнемо код |
машинный код |
комментарии |
длина команды |
8200 |
LXI H |
21 |
Загрузка числа в регистр. пару HL |
3 байта |
8201 |
EF |
|||
8202 |
01 |
|||
8203 |
LXI D |
11 |
Загрузка числа в регистр. пару DE |
3 байта |
8204 |
B5 |
|||
8205 |
02 |
|||
8206 |
XCHG |
EB |
Обмен данными между HL и DE |
1 байт |
8207 |
LXI H |
21 |
Загрузка адреса 8140 в регистр. пару HL |
3 байта |
8208 |
40 |
|||
8209 |
81 |
|||
8210 |
MOV M,D |
72 |
Переслать содержимое D в M |
1 байт |
8211 |
RST 32 |
E7 |
Завершение программы |
1 байт |
Протокол: содержимое ячейки памяти с адресом 8140 равно 1EF = 495, что совпадает с начальным содержимым регистровой пары HL
Задание 4
Записать в аккумулятор число 99 (63) и произвести изменение на противоположное указав разряды: 1, 2 и 3, 4 разряды. Обнулить в числе 99 (63) младший и старший полубайт. Результат поместить в ячейку 8250.
адрес |
мнемо код |
машинный код |
комментарии |
длина команды |
8200 |
MVI B, 99 |
06 |
Запись числа 99 в регистр B |
2 байта |
8201 |
63 |
|||
8202 |
MVI A, m |
3E |
Запись маски в аккумулятор |
2 байта |
8203 |
F |
|||
8204 |
XRA B |
A8 |
Поразрядное ИСКЛЮЧАЮЩЕЕ ИЛИ над содержимым регистра B и аккумулятора |
1 байт |
8205 |
LXI H |
21 |
Загрузка адреса 8250 в регистр. пару HL |
3 байта |
8206 |
50 |
|||
8207 |
82 |
|||
8208 |
MOV M, A |
77 |
Помещаем содержимое аккумулятора в ячейку памяти 8250 |
1 байт |
8209 |
PST 32 |
E7 |
Завершение программы |
1 байт |
Протокол: содержимое ячейки памяти с адресом 8250 равно: 1C=28
Обнулить в числе 99 (63) младший и старший полубайт. Результат поместить в ячейку 8250.
адрес |
мнемо код |
машинный код |
комментарии |
длина команды |
8200 |
MVI B, 99 |
06 |
Запись числа 99 в регистр B |
2 байта |
8201 |
63 |
|||
8202 |
MVI A, m |
3E |
Запись маски в аккумулятор |
2 байта |
8203 |
a)63 b)0 |
|||
8204 |
XRA B |
A8 |
Поразрядное ИСКЛЮЧАЮЩЕЕ ИЛИ над содержимым регистра B и аккумулятора |
1 байт |
8205 |
LXI H |
21 |
Загрузка адреса 8250 в регистр. пару HL |
3 байта |
8206 |
50 |
|||
8207 |
82 |
|||
8208 |
MOV M, A |
77 |
Помещаем содержимое аккумулятора в ячейку памяти 8250 |
1 байт |
8209 |
PST 32 |
E7 |
Завершение программы |
1 байт |
Протокол: содержимое ячейки памяти с адресом 8250 равно: а)0; б)63=99
Задание 5
Дан массив из 109 (6D) чисел. Переписать в массив 2 числа, лежащие в диапазоне от 9 до 15. адрес первого массива 8300, второго 8400.
адрес |
мнемо код |
машинный код |
комментарии |
длина команды |
8200 |
LXI H |
21 |
Загрузка адреса 8300 в регистр. пару HL |
3 байта |
8201 |
00 |
|||
8202 |
83 |
|||
8203 |
LXI D |
11 |
Загрузка адреса 8400 в регистр. пару HD |
3 байта |
8204 |
00 |
|||
8205 |
84 |
|||
8206 |
MVI B, 109 |
06 |
Запись числа |
2 байта |
8207 |
6D |
|||
8208 |
MOV AM |
7E |
Запись первого числа из массива в аккумулятор |
1 байт |
8209 |
CALL |
CD |
Команда перехода на подпрограмму по адресу 8500 |
3 байта |
8210 |
00 |
|||
8211 |
85 |
|||
8212 |
DCR B |
05 |
Уменьшение цикла на 1 |
1 байт |
8213 |
JNZ N1 |
C2 |
Проверка числа на 0 |
3 байта |
8214 |
08 |
|||
8215 |
82 |
|||
8216 |
RST 32 |
E7 |
Конец основной программы |
1 байт |
8500 |
CPI 9 |
FE |
Запись числа 9 в аккумулятор |
2 байта |
8501 |
09 |
|||
8502 |
IC N2, 8512 |
DA |
Проверяем наше число |
3 байта |
8503 |
OC |
|||
8504 |
85 |
|||
8505 |
CPI 15 |
FE |
Сравниваем содержимое аккумулятора с числом 15 |
2 байта |
8506 |
OF |
|||
8507 |
INC N2, 8512 |
D2 |
3 байта |
|
8508 |
OC |
|||
8509 |
85 |
|||
8510 |
STAX D |
12 |
Пересылка числа из массива 1 в массив 2 |
1 байт |
8511 |
INX D |
13 |
Увеличение массива на 1 |
1 байт |
8512 |
INX H |
23 |
Увеличение адреса массива на 1 |
1 байт |
8513 |
RET |
C9 |
Возврат в основную программу |
1 байт |
Уважаемые коллеги! Предлагаем вам разработку программного обеспечения под ключ.
Опытные программисты сделают для вас мобильное приложение, нейронную сеть, систему искусственного интеллекта, SaaS-сервис, производственную систему, внедрят или разработают ERP/CRM, запустят стартап.
Сферы - промышленность, ритейл, производственные компании, стартапы, финансы и другие направления.
Языки программирования: Java, PHP, Ruby, C++, .NET, Python, Go, Kotlin, Swift, React Native, Flutter и многие другие.
Всегда на связи. Соблюдаем сроки. Предложим адекватную конкурентную цену.
Заходите к нам на сайт и пишите, с удовольствием вам во всем поможем.
Уважаемый посетитель!
Чтобы распечатать файл, скачайте его (в формате Word).
Ссылка на скачивание - внизу страницы.