pesare_aftab_207
یک شنبه 03 بهمن 1389, 10:40 صبح
من این برنامه رو نوشتم قراره یه کارکتر بگیره اگه عدد بود بره ستاره چاپ کنه اگه نبودم بگه عدد وارد کن.
گفتم کارکترو بگیره اگه از 65 برزگتر بود خوب حرفه اگه کوچکتر بود پس عدده.بعدشم برنامه ی ستاره ای که نوشتم جدا گونه درسته پس اینحا هم باید درست باشه مشکل فقط اینه که کارکترو که می گیره درست عمل نمی کنه کسی نمیدونه ایرادش کجاس
stsg segment stack stack
dw 32 dup(?)
stsg ends
dasg segment
x dw ?
s db '*'
down db 10,13
msg1 db 'please',0
dasg ends
codsg segment
assume cs:codsg,ss:stsg,ds:dasg
main proc far
mov ax,0000h
start:
jmp l1
l2:
l1:
mov ah,1h
int 21h
cmp al,65
jg func1
jl func2
func1:
jmp l2
func2:
call stars
mov ax,4c00h
int 21h
main endp
;***********************
stars proc near
mov bl,al
mov cx,Bx
mov dl,0
for:
inc dl
mov cl,dl
for2:
output s
loop for2
output down
dec ax
mov cx,ax
inc cx
stars endp
codsg ends
end main
codsg ends
end main
گفتم کارکترو بگیره اگه از 65 برزگتر بود خوب حرفه اگه کوچکتر بود پس عدده.بعدشم برنامه ی ستاره ای که نوشتم جدا گونه درسته پس اینحا هم باید درست باشه مشکل فقط اینه که کارکترو که می گیره درست عمل نمی کنه کسی نمیدونه ایرادش کجاس
stsg segment stack stack
dw 32 dup(?)
stsg ends
dasg segment
x dw ?
s db '*'
down db 10,13
msg1 db 'please',0
dasg ends
codsg segment
assume cs:codsg,ss:stsg,ds:dasg
main proc far
mov ax,0000h
start:
jmp l1
l2:
l1:
mov ah,1h
int 21h
cmp al,65
jg func1
jl func2
func1:
jmp l2
func2:
call stars
mov ax,4c00h
int 21h
main endp
;***********************
stars proc near
mov bl,al
mov cx,Bx
mov dl,0
for:
inc dl
mov cl,dl
for2:
output s
loop for2
output down
dec ax
mov cx,ax
inc cx
stars endp
codsg ends
end main
codsg ends
end main