Aftabgardan-cc
Active Member
سلام؛
بر و بچ اسمبلر!
يه نگاه به اين كدها كنيد ببينيد چه عيبي دارن كه فايل ابجكت ساخته نميشه!
صورت مسئله اين بوده:
برنامهاي بنويسيد كه يك نام را دريافت كند و تعداد حروف الفبايي كوچك آن را بشمرد و همراه با نام در صفحه نمايش دهد!
البته من تازهكارم اگه خيلي ايراد داشت، ضايع نكنيد!
خيلي ممنون!
بر و بچ اسمبلر!
يه نگاه به اين كدها كنيد ببينيد چه عيبي دارن كه فايل ابجكت ساخته نميشه!
صورت مسئله اين بوده:
برنامهاي بنويسيد كه يك نام را دريافت كند و تعداد حروف الفبايي كوچك آن را بشمرد و همراه با نام در صفحه نمايش دهد!
کد:
sseg SEGMANT 'stack'
db 64 dup(0)
sseg Ends
dseg SEGMENT 'data'
msg db 'Enter Youe Name:','$'
inputbuf label byte
maxlen db 30
actlen db ?
inputdata db 30 dup('*')
str db 2 dup(''),'$'
dseg Ends
cseg SEGMENT 'code'
main proc far
assume cs:cseg,ds:dseg,ss:sseg
mov ax,dseg
mov ds,ax
;/////////////////////////////////////////////////////////
lea dx,msg
mov ah,09h
int 21h
;/////////////////////////////////////////////////////////
mov ah,0ah
lea dx,inputbuf
int 21h
;/////////////////////////////////////////////////////////
lea bx,inputdata
add bx,actlen
mov [bx],'$'
mov ah,09h
int 21h
mov al,inputdata
mov bl,0
mov cl,10
l1:cbw
div cl
add bl
cmp al,0
jne l1
lea bx,str
add bx,1
mov al,bl
add bx,2
mov cl,10
l2:cbw
div cl
add ah,48
mov [bx],ah
dec bx
cmp al,0
jne l2
lea dx,str
;////////////////////////////////////////////////////////
mov ah,09h
int 21h
main endp
cseg Ends
end main
البته من تازهكارم اگه خيلي ايراد داشت، ضايع نكنيد!
خيلي ممنون!