编程求出下列公式中的Y值,并将结果存放入RESULT单元中:(宏汇编程序)

Y=5X^2+2X-1
2025-01-04 09:43:53
推荐回答(1个)
回答1:

先贴一个整数版的,如果需要按照浮点数计算,再贴

.model small
.stack 100h
.data
result dw 0
.code
;
;entry ax=x
;exit y=ax
y proc near
push si
mov si,ax
imul si ;x^2
mov dx,5 ;
imul dx ;5x^2
mov dx,si
shl dx,1 ;2x
add ax,dx ;5x^2+2x
inc ax ;5x^2+2x+1

pop si
ret
y endp
;
main proc
mov ax, @data
mov ds, ax
mov ax, 5 ;;;
call y
mov word ptr [result], ax
call print
mov ax, 4c00h
int 21h
main endp
;
print proc near
push bx
push dx
mov bx, 10
xor dx, dx
or ax, ax
jz print_0
div bx
call print
add dl, '0'
push ax
mov ah, 2
int 21h
pop ax
print_0:
pop dx
pop bx
ret
print endp
end main