Чередование 3 строчных и 3 заглавных букв - Assembler

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

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

Здравствуйте, дали задание чередования символов, 3 заглавных и 3 строчных. Я делал чередование 1 заглавный и 1 строчный. Может кто помочь? Пожалуйста. Мне осталось 1 работу сдать для зачета. Вот код:
.model small
.386
.data
stroka db " ABCDEFGHIJKLMNOPQRSTU"
len    equ $-stroka
    db '$' 
.code
start:
mov ax,@data
mov ds,ax
mov es,ax
cld
mov cx,len
lea si,stroka
mov di,si
mov bx,0
next:
lodsb
cmp al,65
jb @@1
cmp al,90
ja @@1
cmp bx,0
je @@2
add al,32
xor bx,bx
jmp @@1
@@2:
mov bx,1
@@1:
stosb
loop next
jmp exit
exit:
lea dx,stroka
mov ah,9h
int 21h
mov ax,4c00h
int 21h
end start

Решение задачи: «Чередование 3 строчных и 3 заглавных букв»

textual
Листинг программы
inc bx
cmp bx,3
jbe @@2
add al,32
@@2:
cmp bx,6
jb @@1
xor bx,bx
@@1:

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

  1. Сначала происходит инкремент регистра BX.
  2. Затем происходит сравнение значения регистра BX с 3.
  3. Если значение регистра BX меньше или равно 3, то происходит переход к метке @@2.
  4. Значение регистра BX увеличивается на 32.
  5. Затем происходит сравнение значения регистра BX с 6.
  6. Если значение регистра BX меньше 6, то происходит переход к метке @@1.
  7. Значение регистра BX устанавливается равным 0.

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


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

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

5   голосов , оценка 3.8 из 5
Похожие ответы