//PAULA ALEJANDRA MONCADA CASTIBLANCO
// CAROL TATIANA MANRIQUE
// GRUPO 102
void setup() {
// put your setup code here, to run once:
Serial.begin(115200);
}
void loop() {
// put your main code here, to run repeatedly:
byte X = 130;
byte Y = 50;
byte Z = suma(X, Y);
byte Z1 = restaComplemento(X, Y);
byte Z2 = circuitoOr(X, Y);
byte Z3 = circuitoAnd(X, Y);
byte Z4 = circuitoXor(X, Y);
byte Z5 = circuitoNand(X, Y);
byte Z6 = circuitoNor(X, Y);
byte Z7 = circuitoXnor(X, Y);
byte Z8 = circuitoAndXNegada(X, Y);
byte Z9 = circuitoOrXNegada(X, Y);
byte Z10 = multiplicarPor2(X);
byte Z11 = dividirPor2(X);
Serial.println("suma");
Serial.println(Z);
Serial.println("resta");
Serial.println(Z1);
Serial.println("OR");
Serial.println(Z2);
Serial.println("AND");
Serial.println(Z3);
Serial.println("XOR");
Serial.println(Z4);
Serial.println("NAND");
Serial.println(Z5);
Serial.println("NOR");
Serial.println(Z6);
Serial.println("XNOR");
Serial.println(Z7);
Serial.println("~X&Y");
Serial.println(Z8);
Serial.println("~X^Y");
Serial.println(Z9);
Serial.println("Multiplicador por 2");
Serial.println(Z10);
Serial.println("Divisor por 2");
Serial.println(Z11);
}
byte suma(byte X, byte Y){
return X + Y;
}
byte restaComplemento(byte X, byte Y){
return X + (~Y + 1);
}
byte circuitoOr(byte X, byte Y){
return X | Y;
}
byte circuitoAnd(byte X, byte Y){
return X & Y;
}
byte circuitoXor(byte X, byte Y){
return X ^ Y;
}
byte circuitoNand(byte X, byte Y){
return ~(X & Y);
}
byte circuitoNor(byte X, byte Y){
return ~(X | Y);
}
byte circuitoXnor(byte X, byte Y){
return ~(X ^ Y);
}
byte circuitoAndXNegada(byte X, byte Y){
return ~X & Y;
}
byte circuitoOrXNegada(byte X, byte Y){
return ~X ^ Y;
}
byte multiplicarPor2(byte X) {
return X << 1;
}
byte dividirPor2(byte X) {
return X >> 1;
}