Advertisement
Not a member of Pastebin yet?
Sign Up,
it unlocks many cool features!
- //TritsetOperations
- Tritset &Tritset::operator~() {
- Tritset newTritset(sizetrits);
- trit trt = Unknown;
- for (int i = 0; i < sizetrits; ++i) {
- trt = BitManipulation::getITrit(&this->memory[i / (sizeof(unsigned) * 4)], i % (sizeof(unsigned) * 4));
- newTritset[i] = BitManipulation::notOperation(trt);
- }
- return newTritset;
- }
- Tritset &Tritset::operator&(Tritset &trtSet) {
- int newSizeTrits = 0;
- int newSizeArr = 0;
- if (this->sizetrits >= trtSet.sizetrits){
- newSizeTrits = sizetrits;
- newSizeArr=sizearr;
- }
- else{
- newSizeTrits = trtSet.sizetrits;
- newSizeArr=trtSet.sizearr;
- }
- Tritset newTritset(newSizeTrits);
- trit trt1 = Unknown;
- trit trt2 = Unknown;
- for (int i = 0; i < sizetrits; ++i) {
- trt1 = (*this)[i];
- trt2 = (trtSet)[i];
- newTritset[i] = BitManipulation::andOperation(trt1, trt2);
- }
- return newTritset;
- }
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement