you did pretty well, actually
the biggest problem i see is the word "PROF" should be "PROC" (short for "procedure")
and - no need for these to be FAR procedures - NEAR should be fine
the CLR routine only clears AX and BX - missing CX and DX
we generally use XOR or SUB to zero registers
xor ax,axthe SB procedure...
the instructions say "subtract AX from BX" - you have the source and destination reversed
sub bx,ax
mov M4,bxthe MUL instruction implies AX as one of the source registers
the instructions say "store the high and low procedures to M5 and M6 respectively"
misuse of the word "procedures", but...
mul bx
mov M5,dx
mov M6,axthe DV procedure is a bit tricky because of register usage

"divide BX by 5 then add the quotient to AX then store the final answer to M7"
DIV divides the 32-bit value in DX:AX by a word
the quotient will be in AX and the remainder (modulus) will be in DX
mov cx,5
xchg ax,bx
xor dx,dx
div cx
add ax,bx
mov M7,ax"Procedure EX that negates AX then add it to BX after BX was incremented three times"
neg ax
inc bx
inc bx
inc bx
add bx,ax