PDA

View Full Version : mới học assembly, cần giúp đỡ


tandt_53
11-03-2011, 02:56 PM
chào các bác!
hiện giờ e mới được học cái assembly, thấy nó cũng hay hay. làm nhiều bài thấy khó quá. :)
hôm nay xin hỏi các bác chỉnh giúp e bài này với. thanks!
triệu chứng của bài này là:
- m+n thì chỉ đúng khi m>n
- m-n thì ko đúng

;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;; ;;;;;;;;;;;;;;;;;;;;;;;;;;;;
;; ;;
;; author: DO THE TAN ;;
;; de bai: ;;
;; nhap vao 2 so nguyen duong x1,x2 (1<= x2 < x1 <= 9) ;;
;; xuat ra ket qua cac phep tinh:x1-1, x1 +2, x1+x2, x1-x2 ;;
;; ;;
;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;; ;;;;;;;;;;;;;;;;;;;;;;;;;;;;

.model small
.stack 256
.data
ms1 db 10,13,9,' moi ban nhap vao 2 so nguyen duong thoa man 0<= m < n <= 9 $'
ms2 db 10,13,9,' moi ban nhap vao so nguyen duong m $'
ms3 db 10,13,9,' moi ban nhap vao so nguyen duong n $'
ms4 db 10,13,9,' m + 1 = $'
ms5 db 10,13,9,' m - 1 = $'
ms6 db 10,13,9,' m + m = $'
ms7 db 10,13,9,' m - n = $'

.code
main proc
mov ax,@data
mov cx,@data
mov ds,ax

;in ra thong bao nhap
mov ah,9
lea dx,ms1
int 21h

;in ra thong bao nhap m
mov ah,9
lea dx,ms2
int 21h

; nhap m
mov ah,1 ; ghi so vua nhap vao 'ah'
int 21h ; du lieu nam o 'al'
mov bl,al ; ghi du lieu o 'al' vao 'bl'
mov cl,al ; ghi du lieu o 'al' vao 'bl'

;in ra thong bao nhap n
mov ah,9
lea dx,ms3
int 21h

;nhap n
mov ah,1
int 21h
mov al,dl

; tang va giam m
inc bl
dec cl

;in ra thong bao ket qua m tang
mov ah,9
lea dx,ms4
int 21h

;m tang
mov ah,2
mov dl,bl
int 21h
; dua gia tri bl ve gia tri ban dau
dec bl

;in ra thong bao m giam
mov ah,9
lea dx,ms5
int 21h
;in ra ket qua
mov ah,2
mov dl,cl
int 21h
;dua gia tri cua cl ve gia tri ban dau
inc cl

;tong hai so
add bl,al
sub bl,48

;in ra m+n
mov ah,9
lea dx,ms6
int 21h

mov ah,2
mov dl,bl
int 21h

;hieu hai so
sub al,cl
sub al,46

;in ra m-n
mov ah,9
lea dx,ms6
int 21h

mov ah,2
mov dl,al
int 21h
main endp
end
;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;; ;;;;;;;;

tandt_53
13-03-2011, 03:40 PM
ko ai làm đc bài này ah? :(:(:(