4_1.asm
上传用户:xinbaokeji
上传日期:2022-07-05
资源大小:295k
文件大小:1k
源码类别:

汇编语言

开发平台:

Visual C++

  1. DATA    SEGMENT
  2. X       DW      2
  3. Y       DW      2
  4. Z       DW      3
  5. V       DW      10
  6. W       DW      2 DUP(?)
  7. DATA    ENDS
  8. STACK   SEGMENT  STACK PARA STACK 'STACK'
  9. DB   200  DUP(0)
  10. STACK   ENDS
  11. CODE    SEGMENT
  12. ASSUME  DS:DATA,CS:CODE,SS:STACK
  13. START:  MOV     AX,SEG DATA
  14. MOV     DS,AX   ;DATA→AX
  15. MOV     AX,X
  16. IMUL    Y       ;(x)*(y)→DX:AX
  17. MOV     CX,AX
  18. MOV     BX,DX   ;(DX:AX)→(BX:CX)
  19. MOV     AX,Z
  20. CWD     ;(Z) 符号扩展
  21. ADD     CX,AX
  22. ADC     BX,DX   ;(BX:CX)+(DX:AX)→(BX:CX)
  23. SUB     CX,2
  24. SBB     BX,0    ;(BX:CX)-2→(BX:CX)
  25. MOV     AX,V
  26. CWD     ;(V)符号扩展
  27. SUB     AX,CX
  28. SBB     DX,BX   ;(DX:AX)-(BX:CX)→(DX:AX)
  29. IDIV    X       ;(DX:AX)/X
  30. MOV     W,  AX   ;商→W
  31. MOV     W+2,DX  ;余数DX→W+2
  32. MOV     AH,4CH
  33. INT     21H
  34. CODE    ENDS    ;退出DOS 状态
  35. END     START