What are the required steps to convert base 10 integer
number -7 678 710 519 452 155 683 to signed binary code (in base 2)?
- 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:
|-7 678 710 519 452 155 683| = 7 678 710 519 452 155 683
2. Divide the number repeatedly by 2:
Keep track of each remainder.
Stop when you get a quotient that is equal to zero.
- division = quotient + remainder;
- 7 678 710 519 452 155 683 ÷ 2 = 3 839 355 259 726 077 841 + 1;
- 3 839 355 259 726 077 841 ÷ 2 = 1 919 677 629 863 038 920 + 1;
- 1 919 677 629 863 038 920 ÷ 2 = 959 838 814 931 519 460 + 0;
- 959 838 814 931 519 460 ÷ 2 = 479 919 407 465 759 730 + 0;
- 479 919 407 465 759 730 ÷ 2 = 239 959 703 732 879 865 + 0;
- 239 959 703 732 879 865 ÷ 2 = 119 979 851 866 439 932 + 1;
- 119 979 851 866 439 932 ÷ 2 = 59 989 925 933 219 966 + 0;
- 59 989 925 933 219 966 ÷ 2 = 29 994 962 966 609 983 + 0;
- 29 994 962 966 609 983 ÷ 2 = 14 997 481 483 304 991 + 1;
- 14 997 481 483 304 991 ÷ 2 = 7 498 740 741 652 495 + 1;
- 7 498 740 741 652 495 ÷ 2 = 3 749 370 370 826 247 + 1;
- 3 749 370 370 826 247 ÷ 2 = 1 874 685 185 413 123 + 1;
- 1 874 685 185 413 123 ÷ 2 = 937 342 592 706 561 + 1;
- 937 342 592 706 561 ÷ 2 = 468 671 296 353 280 + 1;
- 468 671 296 353 280 ÷ 2 = 234 335 648 176 640 + 0;
- 234 335 648 176 640 ÷ 2 = 117 167 824 088 320 + 0;
- 117 167 824 088 320 ÷ 2 = 58 583 912 044 160 + 0;
- 58 583 912 044 160 ÷ 2 = 29 291 956 022 080 + 0;
- 29 291 956 022 080 ÷ 2 = 14 645 978 011 040 + 0;
- 14 645 978 011 040 ÷ 2 = 7 322 989 005 520 + 0;
- 7 322 989 005 520 ÷ 2 = 3 661 494 502 760 + 0;
- 3 661 494 502 760 ÷ 2 = 1 830 747 251 380 + 0;
- 1 830 747 251 380 ÷ 2 = 915 373 625 690 + 0;
- 915 373 625 690 ÷ 2 = 457 686 812 845 + 0;
- 457 686 812 845 ÷ 2 = 228 843 406 422 + 1;
- 228 843 406 422 ÷ 2 = 114 421 703 211 + 0;
- 114 421 703 211 ÷ 2 = 57 210 851 605 + 1;
- 57 210 851 605 ÷ 2 = 28 605 425 802 + 1;
- 28 605 425 802 ÷ 2 = 14 302 712 901 + 0;
- 14 302 712 901 ÷ 2 = 7 151 356 450 + 1;
- 7 151 356 450 ÷ 2 = 3 575 678 225 + 0;
- 3 575 678 225 ÷ 2 = 1 787 839 112 + 1;
- 1 787 839 112 ÷ 2 = 893 919 556 + 0;
- 893 919 556 ÷ 2 = 446 959 778 + 0;
- 446 959 778 ÷ 2 = 223 479 889 + 0;
- 223 479 889 ÷ 2 = 111 739 944 + 1;
- 111 739 944 ÷ 2 = 55 869 972 + 0;
- 55 869 972 ÷ 2 = 27 934 986 + 0;
- 27 934 986 ÷ 2 = 13 967 493 + 0;
- 13 967 493 ÷ 2 = 6 983 746 + 1;
- 6 983 746 ÷ 2 = 3 491 873 + 0;
- 3 491 873 ÷ 2 = 1 745 936 + 1;
- 1 745 936 ÷ 2 = 872 968 + 0;
- 872 968 ÷ 2 = 436 484 + 0;
- 436 484 ÷ 2 = 218 242 + 0;
- 218 242 ÷ 2 = 109 121 + 0;
- 109 121 ÷ 2 = 54 560 + 1;
- 54 560 ÷ 2 = 27 280 + 0;
- 27 280 ÷ 2 = 13 640 + 0;
- 13 640 ÷ 2 = 6 820 + 0;
- 6 820 ÷ 2 = 3 410 + 0;
- 3 410 ÷ 2 = 1 705 + 0;
- 1 705 ÷ 2 = 852 + 1;
- 852 ÷ 2 = 426 + 0;
- 426 ÷ 2 = 213 + 0;
- 213 ÷ 2 = 106 + 1;
- 106 ÷ 2 = 53 + 0;
- 53 ÷ 2 = 26 + 1;
- 26 ÷ 2 = 13 + 0;
- 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.
7 678 710 519 452 155 683(10) = 110 1010 1001 0000 0100 0010 1000 1000 1010 1101 0000 0000 0011 1111 0010 0011(2)
4. Determine the signed binary number bit length:
The base 2 number's actual length, in bits: 63.
- 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) is reserved for 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, 63,
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:
7 678 710 519 452 155 683(10) = 0110 1010 1001 0000 0100 0010 1000 1000 1010 1101 0000 0000 0011 1111 0010 0011
6. Get the negative integer number representation:
To get the negative integer number representation on 64 bits (8 Bytes),
... change the first bit (the leftmost), from 0 to 1...
-7 678 710 519 452 155 683(10) Base 10 integer number converted and written as a signed binary code (in base 2):
-7 678 710 519 452 155 683(10) = 1110 1010 1001 0000 0100 0010 1000 1000 1010 1101 0000 0000 0011 1111 0010 0011
Spaces were used to group digits: for binary, by 4, for decimal, by 3.