home *** CD-ROM | disk | FTP | other *** search
/ RBBS in a Box Volume 1 #3.1 / RBBSIABOX31.cdr / tile / test87.asm < prev    next >
Encoding:
Assembly Source File  |  1982-08-05  |  948 b   |  43 lines

  1.     page    ,132
  2.     title    Test of 8087 accuracy
  3. data    segment public
  4. int_result    dt    ?
  5. numbig    dd    1000000
  6. number7 dw    7
  7. number100    dw    100
  8. result    dq    ?
  9. r2    dq    ?
  10. control_87    dw    03BFH
  11. data    ends
  12. .xlist
  13. include 87mac.lib
  14. .list
  15. code    segment public
  16.     extrn    print_bcd:near
  17.     assume    cs:code,ds:data
  18. start:
  19.     mov    ax,data
  20.     mov    ds,ax            ; set up segment
  21.     fldcw    control_87        ; control word
  22.     fild    number7         ; value 7
  23.     fidiv    number100        ; .07 in ST
  24.     fst    r2            ; store as useful value
  25.     fiadd    numbig            ; add in the huge number
  26.     fstp    result            ; store number away
  27. add_more:
  28.     mov    cx,50000        ; lots of loops
  29. add_loop:
  30.     fld    result            ; get current result
  31.     fadd    r2            ; add in .07
  32.     fstp    result            ; store as new result
  33.     loop    add_loop        ; continue
  34.     fld    result            ; get the result
  35.     fimul    number100        ; adjust by 100
  36.     fbstp    int_result        ; store as human readable
  37.     mov    si,offset int_result    ; point to packed bcd
  38.     call    print_bcd
  39.     jmp    add_more
  40. code    ends
  41.     end    start
  42.  
  43.