Найти наименьшее число из трех однобайтовых знаковых чисел (emu8086) - Assembler
Формулировка задачи:
Необходимо реализовать программу, которая находит наименьшее из трех однобайтовых знаковых чисел. Программа необходимо написать в emu8086.
Решение задачи: «Найти наименьшее число из трех однобайтовых знаковых чисел (emu8086)»
textual
Листинг программы
- .model small
- .data
- a db 100
- b db -84
- c db -32
- .stack 100h
- .code
- main:
- mov ax, @data
- mov ds, ax
- mov al, a
- cmp al, b
- jle @@TestC
- mov al, b
- @@TestC:
- cmp al, c
- jle @@Stop
- mov al, c
- @@Stop:
- mov ax, 4C00h
- int 21h
- end main
Объяснение кода листинга программы
- Объявлены три однобайтовых переменные a, b и c, которые содержат значения 100, -84 и -32 соответственно.
- Начальный сегмент данных сохранен в регистре ax.
- Сегмент данных установлен в значение, сохраненное в регистре ax.
- Переменная al (младший байт регистра ax) установлена равной переменной a.
- Производится сравнение переменной al и переменной b, и если переменная al больше переменной b, то переменная al устанавливается равной переменной b.
- Переменная al сравнивается с переменной c, и если переменная al меньше переменной c, то выполняется переход к метке @Stop.
- Переменная al устанавливается равной переменной c.
- Выполняется переход к метке @Stop.
- Завершение работы программы: регистр ax содержит код завершения программы, который передается в функцию int 21h.
- Код программы завершается.
ИИ поможет Вам:
- решить любую задачу по программированию
- объяснить код
- расставить комментарии в коде
- и т.д