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

汇编语言

开发平台:

Visual C++

  1. STACK   SEGMENT  STACK PARA STACK 'STACK'
  2. BUFFER DB   10 DUP(?)   
  3. STACK   ENDS
  4. DATA    SEGMENT
  5. X       DB  -5
  6. RESULT  DB  ?
  7. DATA    ENDS
  8. CODE    SEGMENT
  9. ASSUME  DS:DATA,CS:CODE,SS:STACK
  10. START:  MOV     AX,DATA
  11. LEA     SI,BUFFER
  12. MOV     DS,AX   ;初始化
  13. MOV     AL,X    ;X取到AL中
  14. TEST    AL,80H  ;测试AL正负
  15. JZ NEXT         ;为正,转NEXT
  16. NEG AL          ;否则AL求补
  17. NEXT:   MOV DL,AL       ;送结果
  18. PUSH CX
  19. MOV CL,4
  20. SHR AL,CL
  21. OR AL,30H
  22. MOV [SI] ,AL
  23. INC SI
  24. MOV AL,DL
  25. AND AL,0FH
  26. OR AL,30H
  27. MOV [SI],AL
  28. INC SI
  29. MOV AL,'$'
  30. MOV [SI],AL
  31. ;MOV DL,AL
  32. MOV DX,OFFSET BUFFER
  33. MOV AH,09H
  34. INT 21H
  35. MOV     AH,4CH
  36. INT     21H     ;返回DOS
  37. CODE    ENDS
  38. END   START     ;汇编结束