Сколько байт в памяти занимают команды? - Assembler

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

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

Помогите люди добрые ответить на 4 вопроса! С ассемблером дела не имел. Была только одна лекция, учусь на заочке. 1. Сколько байт в памяти занимает команда передачи данных MOV? 2. Сколько байт в памяти занимает команда выхода из процедуры RET? 3. Сколько байт в памяти занимает весь сегмент кода? 4. Сколько байт в памяти занимает директива процедуры ENDP? Файл листинга:
Листинг программы
  1. Turbo Assembler Version 4.1 11/07/12 12:40:29 Page 1
  2. com.asm
  3. 1 0000 codesg SEGMENT PARA 'Code'
  4. 2 ASSUME CS:codesg,DS:codesg, SS:codesg, ES:nothing
  5. 3 ORG 100H
  6. 4 0100 EB 05 90 begin: JMP main
  7. 5 ;-------------------------------------------------------------
  8. 6 0103 01 02 03 04 flddb DB 1, 2, 3, 4
  9. 7 ;-------------------------------------------------------------
  10. 8 0107 main PROC NEAR
  11. 9 0107 8A 26 0103r MOV AH,byte ptr flddb
  12. 10 010B 32 F6 XOR DH,DH
  13. 11 010D C3 RET
  14. 12 010E main ENDP
  15. 13 010E codesg ENDS
  16. 14 END begin
  17. Turbo Assembler Version 4.1 11/07/12 12:40:29 Page 2
  18. Symbol Table
  19. Symbol Name Type Value
  20. ??DATE Text "11/07/12"
  21. ??FILENAME Text "com "
  22. ??TIME Text "12:40:29"
  23. ??VERSION Number 040A
  24. @CPU Text 0101H
  25. @CURSEG Text CODESG
  26. @FILENAME Text COM
  27. @WORDSIZE Text 2
  28. BEGIN Near CODESG:0100
  29. FLDDB Byte CODESG:0103
  30. MAIN Near CODESG:0107
  31. Groups & Segments Bit Size Align Combine Class
  32. CODESG 16 010E Para none CODE

Решение задачи: «Сколько байт в памяти занимают команды?»

textual
Листинг программы
  1. 9 0107  8A 26 0103r        MOV    AH,byte ptr flddb

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

  1. 0107 - адрес, где находится текущая команда в памяти
  2. 8A - опкод команды, который указывает процессору, какую операцию нужно выполнить
  3. 26 - модификатор команды, в данном случае, он указывает на размер операнда
  4. 0103 - адрес операнда в памяти, в данном случае, это адрес переменной flddb
  5. MOV - инструкция, которая перемещает значение из одного места памяти в другое
  6. AH - регистр общего назначения
  7. byte ptr - указатель на размер операнда (в данном случае, это байтовый размер)
  8. flddb - переменная, значение которой перемещается в регистр AH через указатель byte ptr

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


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

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

13   голосов , оценка 4.231 из 5

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

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

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