binary - Sign magnitude, One's complement, Two's Complement -
so professor has question make list of positive , negative numbers can represented in one's, two's complements, , sign magnitude:
using 4 bit numbers, example (5)10 = ( 0101)2 write positive numbers , negative numbers can represented 4 bits in sign-magnitude, one’s complement, , two’s complement.
now, not looking answer clarification.
- for sign magnitude, first bit represents sign of number. in example provided, negative 5 -5= (1101), ones complement = (0101) twos complement (1010)
- sign magnitude allows 3 bits show number , 1 sign (the leading bit right left.) mean have 8 combinations. numbers 0-7 , -0- (-6) ones , twos have 16? 0-15 , -0-(-15)
can explain question better?
here's brief description 3 representation techniques you've mentioned.
sign , magnitude representation
in representation, can represent numbers in number of bits (powers of 2). there 2 parts in representation. sign , magnitude, name implies.
if want represent number in n number of bits,
- the first bit represents sign of number. i.e. 0 positive number , 1 negative number.
- the remaining bits (n-1) represent magnitude of number in binary.
e.g. if want represent +25 , -25 using 8 bits: (+25)10 = 0011001 , (-25)10 = 10011001
complement
since binary number system has 2 digits (0 , 1), complement of 1 digit other. i.e. complement of 0 1 , vice versa.
one's complement
in representation, there no specific bit represent sign, msb (most significant bit) can used determine sign of number. i.e. msb 0 if number positive , 1 if number negative. binary numbers used , specific bit size used. (e.g. 8, 16, 32, etc. bits).
if number positive
- convert number binary
- set number specific bit size
if number negative
- convert number binary
- set number specific bit size
- get complement of value
e.g. take previous example again
- (+25)10
- convert number binary -> (11001)2
- set number specific bit size -> (0001 1001)
- (-25)10
- convert number binary -> (11001)2
- set number specific bit size -> (0001 1001)
- get complement of value -> (1110 0110)
two's complement
this representation technique similar one's complement representation. main difference when number negative, 1 added lsb (least significant bit) after getting complement.
e.g. let take same example
- (+25)10
- convert number binary -> (11001)2
- set number specific bit size -> (0001 1001)
- (-25)10
- convert number binary -> (11001)2
- set number specific bit size -> (0001 1001)
- get complement of value -> (1110 0110)
- add 1 lsb -> (1110 0110) + 1 = (1110 0111)
Comments
Post a Comment