1 is the pc program counter unsigned 2 when branching is the 39 label 39 part of the 5346757

1. Is the PC (program counter) unsigned?

2. When branching, is the 'label' part of the instruction added to the PC or is the 'label' the location the PC jumps to irrespective of the current PC?

Example #1:

0001000 10000 10001 1111111111111100 is equivalent to beq $s0, $s1, -4 correct?

If that is correct, I am assuming you need to add -4 to the current PC because as question #1 implies, I am thinking the PC is unsigned.

Example #2:

If the current PC = 10110000 01010101 11111111 00001100 and the jump instruction '000010 11101010100000000011111111' is executed, is the 26 bit target location where the PC will jump to? If so, that means the current PC value is superfluous correct? What would the new PC location be?

"Get 15% discount on your first 3 orders with us"
Use the following coupon
FIRST15

Order Now