上传用户:hzsgec
上传日期:2022-06-23
资源大小:2374k
文件大小:2k
源码类别:

汇编语言

开发平台:

Asm

  1. ;Example assembly language program -- adds two numbers
  2. ; Author: Unknown
  3. ; Date: 2009-1-1
  4. .386
  5. .MODEL FLAT
  6. ExitProcess PROTO NEAR32 stdcall, dwExitCode:DWORD
  7. INCLUDE io.h            ; header file for input/output
  8. cr      EQU     0dh     ; carriage return character
  9. Lf      EQU     0ah     ; line feed
  10. .STACK  4096            ; reserve 4096-byte stack
  11. .DATA                   ; reserve storage for data
  12. number1 DWORD   ?
  13. number2 DWORD   ?
  14. prompt1 BYTE    cr,Lf,"程序目的:计算两个整数之和",cr,Lf,cr,Lf,
  15. "请输入一个整数:", 0
  16. prompt2 BYTE    cr,Lf,"请输入另一个整数:", 0
  17. string  BYTE    40 DUP (?),0
  18. label1  BYTE    cr, Lf, "这两个整数相加之和为:"
  19. sum     BYTE    11 DUP (?)
  20.         BYTE    cr, Lf, 0
  21. .CODE                           ; start of main program code
  22. _start:
  23.         output  prompt1         ; prompt for first number
  24.         input   string, 40      ; read ASCII characters
  25.         atod    string          ; convert to integer
  26.         mov     number1, eax    ; store in memory
  27.         output  prompt2         ; repeat for second number
  28.         input   string, 40
  29.         atod    string
  30.         mov     number2, eax
  31.         mov     eax, number1    ; first number to EAX
  32.         add     eax, number2    ; add second number
  33.         dtoa    sum, eax        ; convert to ASCII characters
  34.         output  label1          ; output label and sum
  35.         INVOKE  ExitProcess, 0  ; exit with return code 0
  36. PUBLIC _start                   ; make entry point public
  37. END                             ; end of source code