Создать таблицу и разработать алгоритм решения задачи - Assembler

Узнай цену своей работы

Формулировка задачи:

в ассемблере 1. Задать в сегменте данных таблицу слов TABSW из произвольных десятичных чисел, размером 42. 2. В старшие байты TABSW второй строки записать произвольную шестнадцатиричную const. 3. Переписать таблицу TABSW в таблицу двойных слов TABSD определенную в дополнительном сегменте ES. и второе задание

Решение задачи: «Создать таблицу и разработать алгоритм решения задачи»

textual
Листинг программы
.MODEL SMALL
.STACK 300H
.DATA
TABSB db 1h, 8h, 9h
Cnt dw 3
TMP db (?)
OP db (?)
A db 6
B db 4
REZ db 0
.CODE
MOV AX, @data
MOV PS, AX
MOV EX, cnt
ANALIZ:
MOV AX, 0
MOV DI, CX
MOV AL, TABSB [DI-1]
CMPAL,8
JE URAVNENIE 2
JB URAVNENIE 1
JA URAVNENIE 3
100P ANALIZ
JMP EXIT
URAVNENIE 1:
MOV OP, cnt
MOV AX, 0
MOV AL, 2
IMUL b
MOV TMP, AL
MOV AL, 4
IMUL TABSB [OP-1]
ADD TMP, AL
SUB TMP,A
ADD REZ, TMP
SUB OP, 1
MOV AL, OP
CMPAL, 1
JA URAVNENIE 1:
JMP EXIT
URAVNENIE 2:
MOV OP, CNT
MOV AX, 0
MOV AL, 8
IMUL b
SUB AL, a
IMUL TABSB [OP-1]
ADD REZ, AL
SUB OP,1
MOV AL, OP
CMPAL, 1
JA URAVNENIE 2
JMP EXIT
URAVNENIE 3:
MOV OP, CNT
MOV AX, 0
MOV AL, 4
IMUL a
MOV TMP, AX
MOV AL, TABSB [OP-1]
IMUL TABSB [OP-1]
ADD TMP, AL
ADD REZ, TMP
SUB OP, 1
MOV AL, OP
CMPAL,1
JA URAVNENIE 3
JMP EXIT
EXIT:
 MOV Ah,4Ch
 INT 21h
END beg

ИИ поможет Вам:


  • решить любую задачу по программированию
  • объяснить код
  • расставить комментарии в коде
  • и т.д
Попробуйте бесплатно

Оцени полезность:

12   голосов , оценка 4 из 5
Похожие ответы