
Лабораторные работы №1-4 / lab3
.docМинистерство Образования Российской Федерации
Уфимский Государственный Авиационный Технический Университет
Кафедра ТК
Отчет по лабораторным работам
по предмету «Организация ЭВМ»
На тему «Программирование ветвлений и циклов»
Выполнила: студент
Проверил: Даринцев О.В.
Уфа, 2005
Лабораторная работа №3
Программирование ветвлений и циклов
а) Преобразовать символьную строку заданной длины, изменив все строчные буквы латинского алфавита на прописные.
.486
dseg segment para public 'data'
source db 'Test STriNg for laB','$'
dest db ' ','$'
ent db 13,10,'$'
len db 0h
dseg ends
stack segment para stack 'stack'
db 64 dup('STACK')
stack ends
cseg segment use16
assume cs:cseg,ds:dseg,ss:stack
main
proc
mov ax,dseg
mov ds,ax
mov di,0
LenCalculation:
mov dh,source[di]
cmp dh,'$'
mov ax,0
setnz ah
pushf
add len,ah
add di,1
popf
jnz LenCalculation
mov ch,0
mov cl,Len
mov di,0
MainTask:
mov ax,0
mov dh, source[di]
cmp dh,41h
setge ah
cmp dh,5Ah
setna al
and al,ah
mov
ah,20h
mul ah
add al,source[di]
mov dest[di],al
add di,1
loop MainTask
lea dx,source
mov ah,09h
int 21h
lea dx,ent
mov ah,09h
int 21h
lea dx,dest
mov ah,09h
int 21h
mov ah,4ch
int 21h
main endp
cseg ends
end main