Вывод кодов ascii каждого символа строки - Assembler

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

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

Вводится строка символов (буквы, цифры). Нужно вывести их коды ascii, а не сами символы (как в этом примере)
Листинг программы
  1. .stack 100h
  2. .data
  3. string db 161 dup ('$')
  4. dlina db 10 dup (0)
  5. n db ?
  6. ;vivod
  7. enter db 'enter:', 0Dh, 0Ah, '$'
  8. newstring db 0Dh, 0Ah, '$'
  9. result db 'result:', 0Dh, 0Ah, '$'
  10. .code
  11. start:
  12. mov ax, data
  13. mov ds, ax
  14. mov es, ax
  15. ;vvod
  16. mov ah,09h
  17. mov dx, offset enter
  18. int 21h
  19. mov ah,0ah
  20. mov dx, offset string
  21. int 21h
  22. ;vivod
  23. mov ah,09h
  24. mov dx, offset newstring
  25. int 21h
  26. mov ah,09h
  27. mov dx, offset result
  28. int 21h
  29. mov ah,09h
  30. lea dx, string+2
  31. int 21h
  32. ;konec
  33. mov ah, 4ch
  34. int 21h
  35. code ends
  36. end start

Решение задачи: «Вывод кодов ascii каждого символа строки»

textual
Листинг программы
  1.     mov ah,2
  2.     mov dl,al
  3.     int 21h

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

  1. Загружается значение регистра ah с константой 2, которая указывает, что программа будет выполнять функцию вывода символа.
  2. Регистру dl присваивается значение регистра al, которое, вероятно, содержит ASCII-код символа, который нужно вывести.
  3. Вызывается прерывание 21h, которое вызывает сервис DOS для вывода символа, находящегося в регистре dl.

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


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

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

7   голосов , оценка 3.714 из 5

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

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

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