Сложение числе в asm

Опубликовано lamazavr - сб, 01/05/2013 - 12:17
Body

Статьи на асемблерную тематику начну со статьи про сложение чисел. Думаю читателю будет слишком нудно читать кучу нравоучений на тему какой асм крутой и т.п.

Итак сложение числе.

Чтобы отдать дань теории упомяну, что в микропроцессорной технике все строится на данных, которые находятся в регистрах (играют роль сверхбыстрой памяти) и памяти.
Сложение производится при помощи команд ADD и ADC (учитывает перенос).

Итак. Допустим мы имеем 2 числа в регистрах AL и BL . Это однобайтные регистры.

"Писать" будем в стандартном виндовском дебагере.

Жмём Пуск - Выполнить - debug

В появившемся консольном окне вводим команду

a 100

Теперь мы вводим программу в ячейки памяти начиная с 100'ой.

Т.к. данные однобайтные никаких махинаций с переносом делать не будем.

Сначала вводим данные в регистры при помощи команды MOV. Первый операнд которой - регистр в который вводим, второй - непосредственные данные.

Затем складываем содержимое регистров при помощи команды ADD.

И завершаем выполнение при помощи команды HLT.

После чего при помощи команды:

g =100 106

В которой первое число - адрес начала программы, второе - конца (адрес ячейки с командой hlt).

Смотрим вывод:

После сложения 3 и 5 в регистре AX (AL - младший байт этого двухбайтного регистра) мы получили сумму чисел т.е. 8.

Категория

Добавить комментарий

Этот вопрос задается для того, чтобы выяснить, являетесь ли Вы человеком или представляете из себя автоматическую спам-рассылку.