Advertisement
Guest User

Untitled

a guest
Sep 23rd, 2019
100
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
text 0.89 KB | None | 0 0
  1. //TritsetOperations
  2. Tritset &Tritset::operator~() {
  3. Tritset newTritset(sizetrits);
  4.  
  5. trit trt = Unknown;
  6. for (int i = 0; i < sizetrits; ++i) {
  7. trt = BitManipulation::getITrit(&this->memory[i / (sizeof(unsigned) * 4)], i % (sizeof(unsigned) * 4));
  8. newTritset[i] = BitManipulation::notOperation(trt);
  9. }
  10.  
  11. return newTritset;
  12. }
  13.  
  14. Tritset &Tritset::operator&(Tritset &trtSet) {
  15. int newSizeTrits = 0;
  16. int newSizeArr = 0;
  17.  
  18. if (this->sizetrits >= trtSet.sizetrits){
  19. newSizeTrits = sizetrits;
  20. newSizeArr=sizearr;
  21. }
  22. else{
  23. newSizeTrits = trtSet.sizetrits;
  24. newSizeArr=trtSet.sizearr;
  25. }
  26.  
  27. Tritset newTritset(newSizeTrits);
  28. trit trt1 = Unknown;
  29. trit trt2 = Unknown;
  30.  
  31. for (int i = 0; i < sizetrits; ++i) {
  32. trt1 = (*this)[i];
  33. trt2 = (trtSet)[i];
  34. newTritset[i] = BitManipulation::andOperation(trt1, trt2);
  35. }
  36. return newTritset;
  37. }
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement