"Ассемблер и программирование для IBM PC. (IBM PC assembler language and programming)" - читать интересную книгу автора (Абель Питер, Переводчик: Ю.В.Сальников)

байте 1 (т.е. во втором байте).
Ниже показаны команды машинного языка, которые обрабатывают эти
данные:

Команда Назначение

A10000 Переслать слово (два байта), начинающееся в DS по адресу
0000, в регистр AX.
03060200 Прибавить содержимое слова (двух байт), начинающегося в DS
по адресу 0002, к регистру AX.
A30400 Переслать содержимое регистра AX в слово, начинающееся в DS
по адресу 0004.
CB Вернуться в DOS.

Обратите внимание, что здесь имеются две команды MOV с pазличными
машинными кодами: A1 и A3. Фактически машинный код зависит от регистров,
на которые имеется ссылка, количества байтов (байт или слово), направления
передачи данных (из регистра или в регистр) и от ссылки на
непосредственные данные или на память.
Воспользуемся опять отладчиком DEBUG для ввода данной программы и
анализа ее выполнения. Когда отладчик выдал свое дефисное приглашение, он
готов к приему команд.
Сначала введите команды E (Enter) для сегмента данных:

E DS:00 23 01 25 00 00 00 (Нажмите Return)
E DS:06 2A 2A 2A (Нажмите Return)

Первая команда записывает три слова (шесть байтов) в начало сегмента
данных, DS:00. Заметьте, что каждое слово вводилось в обратной
последовательности, так что 0123 есть 2301, a 0025 есть 2500. Когда
команда MOV будет обращаться к этим cловам, нормальная последовательность
будет восстановлена и 2301 станет 0123, а 2500 - 0025.
Вторая команда записывает три звездочки (***) для того, чтобы их
можно было видеть впоследствии по команде D (Dump) - другого назначения
эти звездочки не имеют.
Введем теперь команды в сегмент кодов, опять начиная с адреса CS:100:

E CS:100 A1 00 00 03 06 02 00
E CS:107 A3 04 00 CB

Теперь команды находятся в ячейках памяти от CS:100 до CS:10A. Эти
команды можно выполнить как это делалось ранее. На рис.2.3 показаны все
шаги, включая команды E. На экране дисплея должны появиться такие же
результаты, хотя адреса CS и DS могут различаться. Для пересмотра
информации в сегменте данных и в сегменте кодов введите команды D (Dump)
соответственно:

для сегмента данных: D DS:000 (Return)
для сегмента кодов: D CS:100 (Return)