.model small
.data
a dw 5
c dw 10
d dw 2
f dw ?
.code
Start:
mov ax,@data
mov ds,ax
; ---------- числитель ----------
; AX = d * 42
mov ax,d
mov bx,42
imul bx ; DX:AX = d*42
mov bx,ax ; BX = d*42
; AX = 2*c
mov ax,c
add ax,ax
; AX = 2*c - d*42
sub ax,bx
push ax ; сохраняем числитель
; ---------- знаменатель ----------
mov ax,c
add ax,a
sub ax,1 ; AX = c+a-1
mov bx,ax ; BX = знаменатель
; ---------- деление ----------
pop ax ; AX = числитель
cwd ; DX:AX
idiv bx ; AX = (2*c-d*42)/(c+a-1)
mov f,ax
mov ax,4C00h
int 21h
end Start