Convert -3 982 319 916 311 394 745 to a Signed Binary in Two's (2's) Complement Representation
How to convert decimal number -3 982 319 916 311 394 745(10) to a signed binary in two's (2's) complement representation
What are the steps to convert decimal number
-3 982 319 916 311 394 745 to a signed binary in two's (2's) complement representation?
- A signed integer, written in base ten, or a decimal system number, is a number written using the digits 0 through 9 and the sign, which can be positive (+) or negative (-). If positive, the sign is usually not written. A number written in base two, or binary, is a number written using only the digits 0 and 1.
1. Start with the positive version of the number:
|-3 982 319 916 311 394 745| = 3 982 319 916 311 394 745
2. Divide the number repeatedly by 2:
Keep track of each remainder.
We stop when we get a quotient that is equal to zero.
- division = quotient + remainder;
- 3 982 319 916 311 394 745 ÷ 2 = 1 991 159 958 155 697 372 + 1;
- 1 991 159 958 155 697 372 ÷ 2 = 995 579 979 077 848 686 + 0;
- 995 579 979 077 848 686 ÷ 2 = 497 789 989 538 924 343 + 0;
- 497 789 989 538 924 343 ÷ 2 = 248 894 994 769 462 171 + 1;
- 248 894 994 769 462 171 ÷ 2 = 124 447 497 384 731 085 + 1;
- 124 447 497 384 731 085 ÷ 2 = 62 223 748 692 365 542 + 1;
- 62 223 748 692 365 542 ÷ 2 = 31 111 874 346 182 771 + 0;
- 31 111 874 346 182 771 ÷ 2 = 15 555 937 173 091 385 + 1;
- 15 555 937 173 091 385 ÷ 2 = 7 777 968 586 545 692 + 1;
- 7 777 968 586 545 692 ÷ 2 = 3 888 984 293 272 846 + 0;
- 3 888 984 293 272 846 ÷ 2 = 1 944 492 146 636 423 + 0;
- 1 944 492 146 636 423 ÷ 2 = 972 246 073 318 211 + 1;
- 972 246 073 318 211 ÷ 2 = 486 123 036 659 105 + 1;
- 486 123 036 659 105 ÷ 2 = 243 061 518 329 552 + 1;
- 243 061 518 329 552 ÷ 2 = 121 530 759 164 776 + 0;
- 121 530 759 164 776 ÷ 2 = 60 765 379 582 388 + 0;
- 60 765 379 582 388 ÷ 2 = 30 382 689 791 194 + 0;
- 30 382 689 791 194 ÷ 2 = 15 191 344 895 597 + 0;
- 15 191 344 895 597 ÷ 2 = 7 595 672 447 798 + 1;
- 7 595 672 447 798 ÷ 2 = 3 797 836 223 899 + 0;
- 3 797 836 223 899 ÷ 2 = 1 898 918 111 949 + 1;
- 1 898 918 111 949 ÷ 2 = 949 459 055 974 + 1;
- 949 459 055 974 ÷ 2 = 474 729 527 987 + 0;
- 474 729 527 987 ÷ 2 = 237 364 763 993 + 1;
- 237 364 763 993 ÷ 2 = 118 682 381 996 + 1;
- 118 682 381 996 ÷ 2 = 59 341 190 998 + 0;
- 59 341 190 998 ÷ 2 = 29 670 595 499 + 0;
- 29 670 595 499 ÷ 2 = 14 835 297 749 + 1;
- 14 835 297 749 ÷ 2 = 7 417 648 874 + 1;
- 7 417 648 874 ÷ 2 = 3 708 824 437 + 0;
- 3 708 824 437 ÷ 2 = 1 854 412 218 + 1;
- 1 854 412 218 ÷ 2 = 927 206 109 + 0;
- 927 206 109 ÷ 2 = 463 603 054 + 1;
- 463 603 054 ÷ 2 = 231 801 527 + 0;
- 231 801 527 ÷ 2 = 115 900 763 + 1;
- 115 900 763 ÷ 2 = 57 950 381 + 1;
- 57 950 381 ÷ 2 = 28 975 190 + 1;
- 28 975 190 ÷ 2 = 14 487 595 + 0;
- 14 487 595 ÷ 2 = 7 243 797 + 1;
- 7 243 797 ÷ 2 = 3 621 898 + 1;
- 3 621 898 ÷ 2 = 1 810 949 + 0;
- 1 810 949 ÷ 2 = 905 474 + 1;
- 905 474 ÷ 2 = 452 737 + 0;
- 452 737 ÷ 2 = 226 368 + 1;
- 226 368 ÷ 2 = 113 184 + 0;
- 113 184 ÷ 2 = 56 592 + 0;
- 56 592 ÷ 2 = 28 296 + 0;
- 28 296 ÷ 2 = 14 148 + 0;
- 14 148 ÷ 2 = 7 074 + 0;
- 7 074 ÷ 2 = 3 537 + 0;
- 3 537 ÷ 2 = 1 768 + 1;
- 1 768 ÷ 2 = 884 + 0;
- 884 ÷ 2 = 442 + 0;
- 442 ÷ 2 = 221 + 0;
- 221 ÷ 2 = 110 + 1;
- 110 ÷ 2 = 55 + 0;
- 55 ÷ 2 = 27 + 1;
- 27 ÷ 2 = 13 + 1;
- 13 ÷ 2 = 6 + 1;
- 6 ÷ 2 = 3 + 0;
- 3 ÷ 2 = 1 + 1;
- 1 ÷ 2 = 0 + 1;
3. Construct the base 2 representation of the positive number:
Take all the remainders starting from the bottom of the list constructed above.
3 982 319 916 311 394 745(10) = 11 0111 0100 0100 0000 1010 1101 1101 0101 1001 1011 0100 0011 1001 1011 1001(2)
4. Determine the signed binary number bit length:
The base 2 number's actual length, in bits: 62.
- A signed binary's bit length must be equal to a power of 2, as of:
- 21 = 2; 22 = 4; 23 = 8; 24 = 16; 25 = 32; 26 = 64; ...
- The first bit (the leftmost) indicates the sign:
- 0 = positive integer number, 1 = negative integer number
The least number that is:
1) a power of 2
2) and is larger than the actual length, 62,
3) so that the first bit (leftmost) could be zero
(we deal with a positive number at this moment)
=== is: 64.
5. Get the positive binary computer representation on 64 bits (8 Bytes):
If needed, add extra 0s in front (to the left) of the base 2 number, up to the required length, 64.
3 982 319 916 311 394 745(10) = 0011 0111 0100 0100 0000 1010 1101 1101 0101 1001 1011 0100 0011 1001 1011 1001
6. Get the negative integer number representation. Part 1:
- To write the negative integer number on 64 bits (8 Bytes), as a signed binary in one's complement representation, replace all the bits on 0 with 1s and all the bits set on 1 with 0s.
Reverse the digits, flip the digits:
Replace the bits set on 0 with 1s and the bits set on 1 with 0s.
!(0011 0111 0100 0100 0000 1010 1101 1101 0101 1001 1011 0100 0011 1001 1011 1001)
= 1100 1000 1011 1011 1111 0101 0010 0010 1010 0110 0100 1011 1100 0110 0100 0110
7. Get the negative integer number representation. Part 2:
- To write the negative integer number on 64 bits (8 Bytes), as a signed binary in two's complement representation, add 1 to the number calculated above 1100 1000 1011 1011 1111 0101 0010 0010 1010 0110 0100 1011 1100 0110 0100 0110 (to the signed binary in one's complement representation).
Binary addition carries on a value of 2:
- 0 + 0 = 0
- 0 + 1 = 1
- 1 + 1 = 10
- 1 + 10 = 11
- 1 + 11 = 100
Add 1 to the number calculated above
(to the signed binary number in one's complement representation):
-3 982 319 916 311 394 745 =
1100 1000 1011 1011 1111 0101 0010 0010 1010 0110 0100 1011 1100 0110 0100 0110 + 1
Decimal Number -3 982 319 916 311 394 745(10) converted to signed binary in two's complement representation:
-3 982 319 916 311 394 745(10) = 1100 1000 1011 1011 1111 0101 0010 0010 1010 0110 0100 1011 1100 0110 0100 0111
Spaces were used to group digits: for binary, by 4, for decimal, by 3.