Переслать содержимое регистра AX в две однобайтовые переменные - Assembler

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

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

Здравствуйте! Изучаю ассемблер, теория дается очень тяжело, поэтому на практике просто нулевой результат. Конкретно сейчас столкнулся с заданием:

-Переслать содержимое регистра AX в две однобайтовые переменные

Прошу как тугому новичку подсказать. То есть мне нужно объявить двухбайтовую переменную, после как-то разделить ее на две однобайтовые и присвоить результат двум однобайтовым? Тыкать в компилятор рандомными решениями не могу, т.к. для меня это темный лес, без единого варианта. Спасибо.

Решение задачи: «Переслать содержимое регистра AX в две однобайтовые переменные»

textual
Листинг программы
  1.     AX       ; AX = 2 байта (слово)
  2.    /  \
  3.  AH   AL     ; AH = 1 байт; AL = 1 байт
  4.  
  5. ; эти переменные одинакового размера
  6.   A  db  0,0             ;переменная
  7.   B  dw  0
  8.  
  9.   mov   ax,1234h         ;AH = 12h; AL = 34h
  10.  
  11. ; Запись значений в переменные
  12.   mov   byte [A],ah      ;сохраняем AH в байте, по адресу(А)
  13.   mov   byte [A+1],al    ;сохраняем AL в байте, по адресу(А+1)
  14.   mov   word [B],ax      ;сохраняем AХ в слове, по адресу(В)
  15.  
  16. ; Чтение значений их переменных
  17.   mov   cx,word[B]       ;читаем в СХ слово с адреса(В)
  18.   mov   dh,byte[A]       ;DH = 12h
  19.   mov   dl,byte[A+1]     ;DL = 34h

Объяснение кода листинга программы

Выполняемые действия в коде:

  1. Переменная AX используется как 2-байтовое значение.
  2. AH и AL являются 1-байтовыми переменными, которые содержат разные части 2-байтового значения AX.
  3. Переменные A и B создаются для хранения 1-байтового и 2-байтового значений соответственно.
  4. Значение AX устанавливается на 1234h (12h для AH и 34h для AL).
  5. Значения AH и AL записываются в байты по адресам A и A+1 соответственно.
  6. Значение AX записывается в слово по адресу B.
  7. Значения CX и DX считываются как слово по адресу B.
  8. Значения DH и DL считываются как байты по адресам A и A+1 соответственно.

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


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

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

9   голосов , оценка 3.556 из 5

Нужна аналогичная работа?

Оформи быстрый заказ и узнай стоимость

Бесплатно
Оформите заказ и авторы начнут откликаться уже через 10 минут
Похожие ответы