Can someone check my work? Show by counterexample that the statement, “To subtract b from a in a computer with a 4-bit, one’s complement architecture, simply negate b and add it to a” does not hold for all integers a and b.
I'm a bit confused, so any help?
@Luigi0210 @wio
Are you using sublime?
I think that the correct ones compliment for -b is 1001
yes, i am using sublime 2.
but 1011 should evaluate to -4 right? not -3. Since it's one's complement architecture?
let me think
Yeah, it should be -4
I'm wondering if one's complement architecture uses the same addition algorithm
Since 1111 would be 0 (-0), then you would have 0001 + 1111 = 0000 which would say 1+ -0 = +0, but this doesn't seem correct since we should really have an answer of 1.
no no we shouldn't have an answer of one. that's what the question tells us. to give a counter example that doesn't work when dealing with just 4 bit architecture.
So I think that if 1's complement has a carry, then it needs to be added back into our new number. So 1111 + 0001 = 1 0000. The carry 1 gets added back in to get us 0001, so our answer is 1
oh sorry, i misreaed your previous comment. ok ok, so if there is a carry over like that, then it gets added back in. I don't know how that work sin the computer but i'll kkep it in mind.
Well, I might be wrong
Okay it looks like if b > a, then you'll need to do a borrow, and so simply doing ones complement and adding will not work.
FWIW, capture.png shows and answer of +11 plus the carry. If the carry triggered a one's compliment conversion, wouldn't that give you the answer? How you could tell -11 from +8 eludes me.
Join our real-time social learning platform and learn together with your friends!