Нужно сделать первую букву заглавной, а последующие - строчными - Assembler

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

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

До этого переводила все буквы из заглавных в строчные,а теперь нужно как то подкорректировать данный код под новое задание. Сделать первые буквы в словах заглавной, а последнующие строчные
Листинг программы
  1. DATASG SEGMENT PARA
  2. MYTEXT DB 'MY NAME IVANOV IVAN' ,13,10, '$'
  3. DATASG ENDS
  4. STACKSG SEGMENT 'Stack'
  5. DB 12 DUP(?)
  6. STACKSG ENDS
  7. CODESG SEGMENT PARA 'Code'
  8. BEGIN PROC FAR
  9. ASSUME SS:STACKSG, CS:CODESG, DS:DATASG
  10. PUSH DS ; сохраняем сегмент данных в стек
  11. SUB AX, AX ; Обнуляем AX
  12. PUSH AX ; сохраняем содержимое АХ в стек
  13. MOV AX, DATASG ; заносим в сегментный
  14. MOV DS, AX ; регистр DS адрес сегмента данных
  15. LEA BX, MYTEXT ; заносим в BX адрес начального символа переменной Mytext
  16. MOV CX, 19H ; Вносим в СХ значение 17Н - параметр цикла
  17. MOV AH, 09H ;
  18. MOV DX, OFFSET MYTEXT ;
  19. INT 21H ; вывода на экран
  20. MT1:
  21. MOV AH, [BX] ; Метка1: заносим в АН код первого символа переменной Mytext
  22. CMP AH, 41H ; Сравниваем значения регистра AH и кода символа 41Н (символа A)
  23. JB MT2 ; преход к метке 2 если код, лежащий в AH больше 41H (символ старше A в таблице ASCII)
  24. CMP AH, 5AH ; Сравниваем значения регистра AH и кода символа 5АН (символа Z)
  25. JA MT2 ; преход к метке 2 если код, лежащий в AH меньше 5АH (символ младше Z в таблице ASCII)
  26. CALL COR ; вызов процедуры COR
  27. MT2:
  28. INC BX ; Метка 2: увеличиваем значение в BX на 1
  29. LOOP MT1 ; Цикл с параметром, лежащим в СХ, передающий управление коду под меткой 1.
  30. LEA DX, MYTEXT ; Заносим в DX адрес переменной MYTEXT для вывода на экран
  31. MOV AH, 09H ; оформляем функцию DOS
  32. INT 21H ; вывода на экран
  33. RET ; воврат
  34. BEGIN ENDP
  35. COR PROC NEAR ; Начало процедуры COR
  36. NOP ; пауза
  37. ADD AH, 20H ; прибавляем к коду символа смещение 20H по таблице ASCII
  38. MOV [BX], AH ; занесение в ячейку с адресом, лежащим в BX, кода символа из AH
  39. RET ; воврат
  40. COR ENDP ; завершение процедуры
  41. CODESG ENDS
  42. END BEGIN
Помогите пожалуйста не очень разобралась ещё в данном языке)))

Решение задачи: «Нужно сделать первую букву заглавной, а последующие - строчными»

textual
Листинг программы
  1.   mov ax,@data
  2.   mov ds,ax

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

  1. Переменная ax используется как регистр для хранения данных
  2. Переменная ds используется как регистр для хранения сегмента данных
  3. Команда mov используется для копирования значения из регистра ax в переменную ds

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


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

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

15   голосов , оценка 4.2 из 5

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

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

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