1110001 0000000101000000 --> 000 0000000101000000 # Reg1 <- 320 1110010 0000000011111111 --> 000 0000000011111111 # Reg2 <- 255 0000110 1001001001001001 --> 000 0000001000111111 # Reg2 <- Reg2 + Reg1 (unsigned) 1110010 0000000011111111 --> 000 0000000011111111 # Reg2 <- 255 0010110 1001001001001001 --> 011 1111111110111111 # Reg2 <- Reg2 - Reg1 (unsigned) 1110010 0000000011111111 --> 000 0000000011111111 # Reg2 <- 255 0100110 1001001001001001 --> 000 0000001000111111 # Reg2 <- Reg2 + Reg1 (signed) 1110010 0000000011111111 --> 000 0000000011111111 # Reg2 <- 255 0110110 1001001001001001 --> 010 1111111110111111 # Reg2 <- Reg2 - Reg1 (signed) 1110010 0000000011111111 --> 000 0000000011111111 # Reg2 <- 255 1000110 1001001001001001 --> 000 0000000001000000 # Reg2 <- Reg2 & Reg1 1110010 0000000011111111 --> 000 0000000011111111 # Reg2 <- 255 1010110 1001001001001001 --> 000 0000000111111111 # Reg2 <- Reg2 | Reg1 1110011 0000000011111111 --> 000 0000000011111111 # Reg3 <- 255 1100111 1001001001001001 --> 000 0000000110111111 # Reg3 <- Reg3 ^ Reg1 0000000 0101011011001110 --> 000 1010110110011100 # output 22222 + 22222 (unsigned) 0100000 0101011011001110 --> 001 1010110110011100 # output 22222 + 22222 (signed) 0000000 1010110110011100 --> 011 0101101100111000 # output 44444 + 44444 (unsigned) 0100000 1010110110011100 --> 011 0101101100111000 # output -21092 + -21092 (signed) 1100101 1001001001001001 --> 100 0000000000000000 # output (Reg1 ^ Reg1) [zero]