АвтоАвтоматизацияАрхитектураАстрономияАудитБиологияБухгалтерияВоенное делоГенетикаГеографияГеологияГосударствоДомДругоеЖурналистика и СМИИзобретательствоИностранные языкиИнформатикаИскусствоИсторияКомпьютерыКулинарияКультураЛексикологияЛитератураЛогикаМаркетингМатематикаМашиностроениеМедицинаМенеджментМеталлы и СваркаМеханикаМузыкаНаселениеОбразованиеОхрана безопасности жизниОхрана ТрудаПедагогикаПолитикаПравоПриборостроениеПрограммированиеПроизводствоПромышленностьПсихологияРадиоРегилияСвязьСоциологияСпортСтандартизацияСтроительствоТехнологииТорговляТуризмФизикаФизиологияФилософияФинансыХимияХозяйствоЦеннообразованиеЧерчениеЭкологияЭконометрикаЭкономикаЭлектроникаЮриспунденкция

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

Читайте также:
  1. A. Самостоятельная работа.
  2. AKM Работа с цепочками событий
  3. File — единственный объект в java.io, который работает непосредственно с дисковыми файлами.
  4. III. ВЛИЯНИЕ ФАКТОРОВ РАБОЧЕЙ СРЕДЫ НА СОСТОЯНИЕ ЗДОРОВЬЯ РАБОТАЮЩИХ.
  5. III. Третий этап – Работа банка с кредитной заявкой клиента с целью оценки его кредитоспособности.
  6. IV. Практическая работа
  7. S:Статистические методы анализа качества разработаны как
  8. VI. Работа сновидения
  9. VIII. Работа над задачей
  10. А) Работа сгущения.
  11. Административная контрольная работа по дисциплине
  12. АУДИТОР, РАБОТАЮЩИЙ САМОСТОЯТЕЛЬНО

”Исследование процесса суммирования на ПЭВМ однобайтовых чисел с использованием команды add al,[si]”

В данной работе необходимо составить программу, которая выполняет следующие действия. В программе в области, определяемой оператором.DATA, организовать массив из двух однобайтовых чисел без знака. Затем программно сложить эти числа и результат сложения вывести на экран монитора, снабдив его соответствующим сообщением. Сумма должна занимать одно слово. Повторить то же самое для чисел со знаком. Отрицательный результат выводить на экран монитора, как в прямом, так и в дополнительном коде.

Отметим, что отрицательные числа в ЭВМ автоматически представляются в дополнительном коде. Признаком отрицательного числа является наличие “1” в знаковом разряде числа.

Рекомендации по выполнению лабораторной работы.

Ниже приведены фрагменты рабочих программ для вывода чисел в шестнадцатеричной форме на экран монитора. Вам необходимо скопировать необходимые тексты подпрограмм в тело вашей программы. В тех местах вашей программы, где вы собираетесь вывести число на экран монитора, необходимо сформировать входные переменные для соответствующих подпрограмм и вызвать подпрограмму на выполнение:

 

CALL имя подпрограммы

Рекомендуется выводить результаты различных вычислений с новой строки.

 

Тексты подпрограмм вывода на экран.

Данная подпрограмма выводит на экран один нибл.

Вход: al – содержит в младшей половине выводимый нибл, старшая половина регистра игнорируется.

Выход: нет, все регистры сохраняют свои первоначальные значения.

 

DisplayNibl PROC NEAR; ближняя процедура запоминания

push ax; изменяемых регистров

Push dx

and al,0fh; очистка старшего нибла

add al,’0’; формирование символа

Cmp al,’9’

Jbe dn1

Add al,7

dn1: mov ah,2; функция DOSа – вывод символа на экран

Mov dl,al

int 21h; выполнить функцию DOS

pop dx; восстановление используемых регистров

Pop ax

ret; возврат из подпрограммы

DisplayNibl ENDP

Данная подпрограмма выводит на экран один байт.

Вход: al – содержит выводимый байт.

Выход: нет, все регистры сохраняют свои первоначальные значения.

 

DisplayByte PROC NEAR; ближняя процедура запоминания

; изменяемых регистров

Push ax

Push cx

Push ax

mov cl,4; подготовка для вывода на экран старшего нибла

Ror ax,cl

call DisplayNibl; вывод нибла на экран

pop ax; восстановление младшего нибла

call DisplayNibl; вывод нибла на экран

pop cx; восстановление используемых регистров

Pop ax

ret; возврат из подпрограммы

DisplayByte ENDP

Данная подпрограмма выводит на экран одно слово.

Вход: – содержит выводимое слово.

Выход: нет, все регистры сохраняют свои первоначальные значения.

DisplayWord PROC NEAR; ближняя процедура запоминания

; изменяемых регистров

Push ax

Push ax

xchg ah,al; подготовка и вывод старшего байта

Call DisplayByte

pop ax; подготовка и вывод младшего байта

Call DisplayByte

Pop ax

ret; возврат из подпрограммы

DisplayWord ENDP

Данная подпрограмма выводит на экран двойное слово.

Вход: ах – содержит младшее выводимое слово,

dx – содержит старшее выводимое слово.

Выход: нет, все регистры сохраняют свои первоначальные значения

DisplayDWord PROC NEAR; ближняя процедура запоминания

; изменяемых регистров

Push ax

Push dx

xchg ax,dx; подготовка и вывод старшего слова

call DisplayWord; подготовка и вывод младшего слова

Mov ax,dx

Call DisplayWord

Pop dx

Pop ax

ret; возврат из подпрограммы

DisplayDWord ENDP

Данная подпрограмма выполняет возврат коретки.

Вход: нет.

Выход: нет, все регистры сохраняют свои первоначальные значения.

DisplayEndString PROC NEAR; ближняя процедура запоминания

; изменяемых регистров

Push ax

Push dx

Mov ah,2

mov dl,13; возврат каретки

Int 21h

mov dl,10; перевод строки

Int 21h

Pop dx

Pop ax

Ret


1 | 2 | 3 | 4 | 5 | 6 | 7 | 8 | 9 | 10 | 11 | 12 | 13 |

Поиск по сайту:



Все материалы представленные на сайте исключительно с целью ознакомления читателями и не преследуют коммерческих целей или нарушение авторских прав. Студалл.Орг (0.006 сек.)