Загрузка данных


.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