Advertisement
Not a member of Pastebin yet?
Sign Up,
it unlocks many cool features!
- format MZ
- stack 100h
- entry main:start
- segment main
- start:
- mov ax,dane
- mov ds,ax
- mov ah,0
- mov al,12h ; tryb pracy karty graficznej 640x480
- int 10h
- petla_glowna:
- dec [licznik]
- cmp [licznik],0
- je koniec
- wylicz_pseudo:
- finit
- fild [m]
- fild [los]
- fild [g]
- fmulp
- fild [h]
- faddp
- fprem ;modulo st1 % st0
- fistp [los]
- fild [l2]
- fild [jeden]
- faddp
- fild [los]
- fprem ;modulo st0 % st1
- fistp [wlos]
- wylicz_funkcje:
- mov bx,[wlos]
- cmp bx,54
- jb f1
- cmp bx,74
- jb f2
- cmp bx,94
- jb f3
- jmp f4
- f1:
- finit
- fld [a1]
- fstp [a]
- fld [a1+8]
- fstp [b]
- fld [a1+16]
- fstp [c]
- fld [a1+24]
- fstp [d]
- fld [a1+32]
- fstp [e]
- fld [a1+40]
- fstp [f]
- jmp funkcja
- f2:
- finit
- fld [b1]
- fstp [a]
- fld [b1+8]
- fstp [b]
- fld [b1+16]
- fstp [c]
- fld [b1+24]
- fstp [d]
- fld [b1+32]
- fstp [e]
- fld [b1+40]
- fstp [f]
- jmp funkcja
- f3:
- finit
- fld [c1]
- fstp [a]
- fld [c1+8]
- fstp [b]
- fld [c1+16]
- fstp [c]
- fld [c1+24]
- fstp [d]
- fld [c1+32]
- fstp [e]
- fld [c1+40]
- fstp [f]
- jmp funkcja
- f4:
- finit
- fld [d1]
- fstp [a]
- fld [d1+8]
- fstp [b]
- fld [d1+16]
- fstp [c]
- fld [d1+24]
- fstp [d]
- fld [d1+32]
- fstp [e]
- fld [d1+40]
- fstp [f]
- jmp funkcja
- funkcja:
- finit
- fld [x]
- fld [a]
- fmulp
- fld [y]
- fld [b]
- fmulp
- faddp
- fld [c]
- faddp
- fstp [xn]
- fld [x]
- fld [d]
- fmulp
- fld [y]
- fld [e]
- fmulp
- faddp
- fld [f]
- faddp
- fstp [yn]
- odworowanie:
- fld [xn]
- fld [xmin]
- fsubp ;st1-st0
- fld [gxe]
- fmulp
- fld [xmax]
- fld [xmin]
- fsubp ;st1-st0
- fdivp
- fistp [xe]
- fld [yn]
- fld [ymin]
- fsubp ;st1-st0
- fld [gye]
- fmulp
- fld [ymax]
- fld [ymin]
- fsubp ;st1-st0
- fdivp
- fld [gye]
- fsubp ;st1-st0
- fchs
- fistp [ye]
- mov bx,0
- fld [yn]
- fstp [y]
- fld [xn]
- fstp [x]
- wysw_pix:
- pusha
- mov ah,0ch
- mov al,15
- mov bh,0
- mov dx,[ye]
- cmp dx, 480
- ja wysw_pix_wy
- mov cx,[xe]
- cmp cx, 640
- ja wysw_pix_wy
- int 10h
- wysw_pix_wy:
- popa
- jmp petla_glowna
- koniec:
- mov ah, 7
- int 21h
- mov ax, 4c00h ; exit to operating system.
- int 21h
- segment dane
- text db 'testowe info$'
- licznik dw 50000
- jeden dw 1
- los dq 1040866
- g dq 13100233
- h dq 11040857
- m dq 9999991
- wlos dw 0
- gxe dq 640.0
- gye dq 480.0
- xe dw 0
- ye dw 0
- x dq 0.0
- y dq 0.0
- l1 dw 0
- l2 dw 99
- xmin dq -30.0
- xmax dq 30.0
- ymin dq -10.0
- ymax dq 60.0
- xn dq 0.0
- yn dq 0.0
- a dq 0.0
- b dq 0.0
- c dq 0.0
- d dq 0.0
- e dq 0.0
- f dq 0.0
- a1 dq -0.64, -0.02, 0.0, -0.18, 0.81, 10.0
- b1 dq 0.4, 0.4, 0,-0.1, 0.4, 0.0
- c1 dq -0.4, -0.4, 0.0, -0.1, 0.4, 0.0
- d1 dq -0.1, 0.0, 0.0, 0.44, 0.44, -2.0
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement