Advertisement
Guest User

Untitled

a guest
Jan 18th, 2017
98
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
text 0.97 KB | None | 0 0
  1. //c
  2. #include <stdio.h>
  3. float obj_stozka_sc(float r, float R, float h);
  4.  
  5. int main(){
  6.  
  7. float r, R, h;
  8.  
  9. printf("r: ");
  10. scanf_s("%f", &r,32);
  11.  
  12. printf("R: ");
  13. scanf_s("%f", &R, 32);
  14.  
  15. printf("h: ");
  16. scanf_s("%f", &h, 32);
  17.  
  18. printf("%f", obj_stozka_sc(r, R, h));
  19.  
  20. return 0;
  21. }
  22.  
  23.  
  24. //asm
  25. .686
  26. .model flat
  27.  
  28. public _obj_stozka_sc
  29.  
  30. .data
  31. dzielna dq 3.0
  32. pi dq 3.14
  33.  
  34. .code
  35. _obj_stozka_sc PROC
  36. push ebp
  37. push ebx
  38. push eax
  39. mov ebp, esp
  40.  
  41. finit
  42.  
  43. mov ebx, ebp
  44. add ebx,8
  45.  
  46. fld dword PTR [ebx+8] ;r
  47. fmul st(0),st(0) ;r^2
  48.  
  49. fld dword PTR [ebx+12] ;R
  50. fmul st(0),st(0) ;R^2
  51.  
  52. fld dword PTR [ebx+12] ;R
  53. fld dword PTR [ebx+8] ;r
  54. fmulp st(1),st(0) ;Rr
  55.  
  56.  
  57. fadd st(0), st(1)
  58. fadd st(0), st(2)
  59. ;R^2 + Rr + r^2
  60.  
  61. fld dword PTR [ebx+16] ;h
  62. fmul st(0), st(1)
  63.  
  64. fld dzielna
  65. fdivp st(1), st(0)
  66.  
  67. fld pi
  68. fmulp st(1), st(0)
  69.  
  70. pop eax
  71. pop ebx
  72. pop ebp
  73. ret
  74. _obj_stozka_sc ENDP
  75. END
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement