bermoda_khatar69
چهارشنبه 04 اردیبهشت 1392, 16:12 عصر
سلام این کد برنامه جدول ضرب 10 در 10 هست که من دست بردم توش میخوام 5 در 5 بشه می شه راهنمایی کنید بگین چیکار کنم
.model small
.stack 64h
.data
String db "1 2 3 4 5 ",'$'
.code
main proc far
mov ax,@data
mov ds,ax
mov ah,2h
mov dh,0
mov dl,3
mov bh,0
int 10h
;Puts
mov ah,9h
lea dx,String
int 21h
mov dh,2
mov cl,1
Continue:
;gotoxy
mov dl,0
mov ah,2h
int 10h
mov bl,1
mov ch,0
push cx
call printf
Next:
add dl,3
mov ah,2h
int 10h
;MUL
mov al,bl
mov ah,0
mul cl
push ax
call printf
inc bl
cmp bl,11
jb Next
add dh,2
inc cl
cmp cl,11
jb Continue
;getch
mov ah,8h
int 21h
mov ax,4c00h
int 21h
main endp
printf proc
push bp
mov bp,sp
push ax
push bx
push cx
push dx
pushf
mov ax,[bp+4]
mov cl,0
l12:
cmp ax,0 ;Taghsim be 10 :: masalan:12->2,1
jz l11
mov bx,10
mov dx,0
div bx
add dx,'0'
push dx
inc cl
jmp l12
l11:
cmp cl,0
jz l15
;putc
mov ah,2h
pop dx
int 21h
dec cl
jmp l11
l15:
popf
pop dx
pop cx
pop bx
pop ax
pop bp
ret 2
printf endp
end main
.model small
.stack 64h
.data
String db "1 2 3 4 5 ",'$'
.code
main proc far
mov ax,@data
mov ds,ax
mov ah,2h
mov dh,0
mov dl,3
mov bh,0
int 10h
;Puts
mov ah,9h
lea dx,String
int 21h
mov dh,2
mov cl,1
Continue:
;gotoxy
mov dl,0
mov ah,2h
int 10h
mov bl,1
mov ch,0
push cx
call printf
Next:
add dl,3
mov ah,2h
int 10h
;MUL
mov al,bl
mov ah,0
mul cl
push ax
call printf
inc bl
cmp bl,11
jb Next
add dh,2
inc cl
cmp cl,11
jb Continue
;getch
mov ah,8h
int 21h
mov ax,4c00h
int 21h
main endp
printf proc
push bp
mov bp,sp
push ax
push bx
push cx
push dx
pushf
mov ax,[bp+4]
mov cl,0
l12:
cmp ax,0 ;Taghsim be 10 :: masalan:12->2,1
jz l11
mov bx,10
mov dx,0
div bx
add dx,'0'
push dx
inc cl
jmp l12
l11:
cmp cl,0
jz l15
;putc
mov ah,2h
pop dx
int 21h
dec cl
jmp l11
l15:
popf
pop dx
pop cx
pop bx
pop ax
pop bp
ret 2
printf endp
end main