Advertisement
Not a member of Pastebin yet?
Sign Up,
it unlocks many cool features!
- #pragma once
- int WyborDlaKlonu(int opt1, int opt2, int opt3, int losW)
- {
- int choice;
- __asm {
- mov eax, losW
- mov ebx, opt1
- cmp eax, ebx
- jbe choice1
- mov eax, losW
- mov ebx, opt2
- cmp eax, ebx
- jbe choice2
- mov eax, losW
- mov ebx, opt3
- cmp eax, ebx
- jbe choice3
- jmp choice4
- choice1 :
- mov choice, 1
- jmp end_prog
- choice2 :
- mov choice, 2
- jmp end_prog
- choice3 :
- mov choice, 3
- jmp end_prog
- choice4 :
- mov choice, 4
- end_prog :
- };
- return choice;
- }
- //---Algorytm generowania fraktali IFS
- double genNewX(double a, double b, double c, double x, double y)
- {
- double xtemp = 0;
- __asm //xtemp = (a * x) + (b * y) + c; <---- x'
- {
- finit
- fld a
- fld x
- fmul
- fld b
- fld y
- fmul
- fadd
- fld c
- fadd
- fstp xtemp
- };
- return xtemp;
- }
- double genNewY(double d, double e, double f, double x, double y)
- {
- double ytemp = 0;
- __asm { //ytemp = (d * x) + (e * y) + f; <---- y'
- finit
- fld d
- fld x
- fmul
- fld e
- fld y
- fmul
- fadd
- fld f
- fadd
- fstp ytemp
- };
- return ytemp;
- }
- //---Transformacja współrzędnych
- int genXe(double x, double xmin, double xmax, int gxmax)
- {
- int xe = 0;
- __asm { //xe = ((x-xmin)/(xmax-xmin))*gxmax;
- finit
- fld x
- fld xmin
- fsub
- fld xmax
- fld xmin
- fsub
- fdiv
- fld gxmax
- fmul
- fstp xe
- };
- return xe;
- }
- int genYe(double y, double ymin, double ymax, int gymax)
- {
- int ye = 0;
- int minus = (-1);
- __asm { //ye = (((y-ymin)/(ymax-ymin))*gymax-gymax)*(-1);
- finit
- fld y
- fld ymin
- fsub
- fld ymax
- fld ymin
- fsub
- fdiv
- fld gymax
- fmul
- fld gymax
- fsub
- fild minus
- fmul
- fstp ye
- }
- return ye;
- }
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement