home *** CD-ROM | disk | FTP | other *** search
/ Power-Programmierung / CD1.mdf / assemblr / library / asm_kit / pstring.asm < prev    next >
Assembly Source File  |  1985-06-21  |  2KB  |  54 lines

  1. ;PSTRING--Program to print a string
  2. ;  Demonstrates EXE files
  3. ;
  4. display       equ  2h             ;display output function
  5. doscall       equ  21h            ;DOS interrupt number
  6. count         equ  49d            ;# of character in string
  7. ;***************************************************************
  8. ;
  9. data_area     segment             ;define data segment
  10. ;
  11. ;string to be printed
  12. ;
  13. string        db 'She is most fair, though she be '
  14.               db 'marble-hearted.',0dh,0ah
  15. data_area     ends
  16. ;***************************************************************
  17. ;
  18. prognam       segment             ;define code segment
  19. ;---------------------------------------------------------------
  20. main          proc  far           ;main part of program
  21. ;
  22.               assume cs:prognam,ds:data_area
  23. ;
  24. start:                            ;starting execution address
  25. ;
  26. ;set up stack for return
  27.               push  ds            ;save old data segment
  28.               sub   ax,ax         ;put zero in AX
  29.               push  ax            ;save it on stack
  30. ;set DS register to current data segment
  31.               mov   ax,data_area  ;data_area segment address
  32.               mov   ds,ax         ;into DS register
  33. ;
  34. ;PRINT CHARACTERS FROM STRING ON SCREEN
  35. ;
  36.               mov   cx,count      ;put # of chars in CX
  37.               mov   bx,offset string  ;addr of string
  38. ;
  39. next_char:
  40.               mov  dl,[bx]        ;put one char in DL
  41.               mov  ah,display     ;Display Char function
  42.               int  doscall        ;call DOS
  43.               inc  bx             ;advance pointer
  44.               loop next_char      ;repeat until done
  45. ;
  46.               ret                 ;return to DOS
  47. ;
  48. main          endp                ;end of main program part
  49. ;---------------------------------------------------------------
  50. prognam       ends                ;end of code segment
  51. ;***************************************************************
  52. ;
  53.               end  start          ;end assembly
  54.