Advertisement
Guest User

main

a guest
Nov 14th, 2019
134
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
text 1.62 KB | None | 0 0
  1. // ConsoleApplication.cpp : Defines the entry point for the console application.
  2. //
  3.  
  4. #include "stdafx.h"
  5.  
  6.  
  7. int main()
  8. {
  9. // zadanie 11
  10.  
  11. //char a = 0xFB, wynik;
  12. //__asm {
  13. // add a, 0xFB
  14. // jc drugi
  15. // mov wynik, 0
  16. // jmp koniec
  17. //drugi:
  18. // mov wynik, 1
  19. // koniec:
  20. //}
  21. //printf("wynik = %x", wynik);
  22.  
  23.  
  24. // zadanie 11 e
  25.  
  26. //char a = 0x08, wynik;
  27. //__asm {
  28. // add a, 0xFC
  29. // jc drugi
  30. // mov wynik, 0
  31. // jmp koniec
  32. //drugi:
  33. // mov wynik, 1
  34. // koniec:
  35. //}
  36. //printf("wynik = %x", wynik);
  37.  
  38.  
  39. // zadanie 13
  40.  
  41. //typedef union {
  42. // unsigned char BYTE;
  43. // struct {
  44. // unsigned char a : 2;
  45. // unsigned char b : 3;
  46. // unsigned char c : 3;
  47. // }bits;
  48. //}un_X;
  49. //un_X x;
  50. //x.BYTE = 0xA7; // 0xA1
  51. //x.bits.a = 3; // a = 1
  52. //x.bits.b = 1;
  53. //x.bits.c = 5;
  54. //char wynik;
  55. //__asm {
  56. // mov al, x
  57. // mov bl, 0
  58. // and al, 0x03 // 1 // moze byc po prostu 3
  59. // mov bl, al // 2
  60. // shl al, 2 // 3
  61. // add bl, al // 4
  62. // shl al, 3 // 5
  63. // add bl, al // 6
  64. // mov wynik, bl
  65. //}
  66. //printf("wynik = %x", wynik); //25 (x)
  67.  
  68.  
  69. // zadanie 14 do dokończenia
  70.  
  71. typedef union {
  72. unsigned char BYTE;
  73. struct {
  74. unsigned char a : 1;
  75. unsigned char b : 3;
  76. unsigned char c : 4;
  77. }bits;
  78. }un_X;
  79. un_X x;
  80.  
  81. x.BYTE = 0xA6;
  82. x.bits.a = 1;
  83. x.bits.b = 3;
  84. x.bits.c = 10;
  85.  
  86. char wynik;
  87. __asm {
  88.  
  89. mov al, x
  90. mov bl, 0
  91.  
  92. and al, 1
  93. jz koniec
  94.  
  95. shl al, 1
  96. and al, 3
  97. mov wynik, al
  98. jmp end
  99.  
  100. koniec:
  101. and al, 17
  102. mov bl, al
  103. mov wynik, bl
  104. end:
  105. }
  106. printf("wynik = %x", wynik); //25 (x)
  107.  
  108. getchar();
  109. return 0;
  110. }
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement