PDA

View Full Version : مشکل در اسمبلی



roxen13
جمعه 12 آبان 1385, 11:34 صبح
درمحاسبات اعداد به زبان اسمبلی مشکل دارم.
مثلا" این برنامه رو نوشتم نمی دونم درسته یا غلط.
چه طور می تونم صفحه ی اجرای برنامه رو نگه دارم تا ببینم چی چاپ می کنه؟
یا جواب آخر و چه طور چاپ کنم؟
<<((a+b)/(a-b))*((a^2+b^2)/(a^2-b^2))>>

.model small
.stack 64

.data
msg db '<<((a+b)/(a-b))*((a^2+b^2)/(a^2-b^2))>>completed',"$"
a db 12
b db 10


.code
main proc far
mov ax,@data
mov ds,ax
;*************
mov al,a
add al,b
mov bl,a
sub bl,b
mov ah,0
div bl
mov bl,a
mul bl
mov cl,b
mul cl
add bx,cx
push bx
mov dl,a
mul dl
sub dx,cx
div dx
;******************
mov ah,9h
lea dx,msg
int 21h
;***********************8
mov ax,4c00h
int 21h
main endp
end main


متشکرم

raha_hakhamanesh
یک شنبه 14 آبان 1385, 13:05 عصر
با سلام

اول اینکه برای نگه داشتن صفحه خیلی کارا می شه کرد ساده ترین کار می تونی دو خط زیر رو به قبل از mov ax, 4c00h
اصافه کنی
mov ax, 08h
int 21h
این دو خط کد دریافت یک کلید هست مثل getch در زبان سی .

و دوم برای اینکه اون عبارت رو چاپ کنی باید در محاسبه مرحله به مرحله اون دقت کنید و حاصل رو در یک یا چند خونه حافظه نگهداری کنید در نهایت اعداد بدست آمده رو به کد اسکی تبدیل کنید حتما می دونین که برای تبدیل به کد اسکی باید چه کار کرد اگر نمی دونید جستجو کنید قبلا نوشته شده

موفق باشید