233
This number can just fit in one byte. How would you write it in hexidecimal? (Sometimes people write hex numbers with a '0x' prefix, but here just give the digits, please.)
Pertanyaan diatas adalah menyuruh kita untuk membuat angka decimal menjadi angka hexadecimal.
Sekalian dengan pertanyaan diatas, gua mo mendeskripsikan apa itu decimal dan apa itu hexadecimal ?
Pada jaman dahulu kala, kita sudah mengenal angka yang kita gunakan hingga sekarang dalam berhitung ataupun apapun tetap menggunakan sistem angka Decimal. dimana Decimal merupakan perpaduan angka dari 0 hingga 9. kita bisa mengatakan dalam artian matematikanya bahwa Decimal berbasis 10 (Maximal dalam penghitungan yang kita gunakan adalah 10).
Bagaimana menurutmu tentang angka "237" ??
"dua ratus tiga puluh tujuh?" atau "Two hundred and thirty seven?"
Untuk mengerti tentang decimal, coba pikirkan itu sebagai "2 sebanyak 102, 3 sebanyak 101 dan 7 sebanyak 100", atau:
2*100 + 3*10 + 7*1 = 237.
Jadi apa itu "4560"?
"4 sebanyak 103, 5 sebanyak 102, 6 sebanyak 101 dan 0 sebanyak 100", atau:
4*1000 + 5*100 + 6*10 + 0*1 = 4560
Bagaimana dengan Hexadecimal ? Jikalau Decimal tadi berbasis 10, kalau hexadecimal ini berbasis 16. (what ? berbasis 16? buset.. banyak jg yah) kita masih menggunakan angka 0-9 tetapi juga menggunakan alfabet A, B, C, D, E, F sebagai pengganti angka 10, 11, 12, 13, 14, 15.
Jika saya mengatakan "38", bilangan ini bisa berupa decimal ataupun hexadecimal. siapa juga yang tau ? tergantung yang bilang bukan ?
3810 adalah bilangan 38 berbasis 10. jadi itu merupakan decimal. 3816 adalah bilangan 38 berbasis 16, jadi itu merupakan hexadecimal. tetapi dalam ilmu komputer sendiri. itu tidak bisa diketahui seperti ada angka 10/16 nya. hanya kita yang mencoba dan mencoba hingga tau apa angka tersebut decimal atau hexadecimal
Jadi apa itu pengertian "38" Dalam hexadecimal Di decimal: "3 Sebanyak 161 dan 8 sebanyak 160", jadi:
3*16 + 8*1 = 48 + 8 = 56.
Bagaimana jika "21C" diartikan dalam decimal? "2 Sebanyak 162, 1 Sebanyak 161 dan 12 sebanyak 160", atau:
2*256 + 1*16 + 12*1 = 512 + 16 + 12 = 540Dengan diatas sangat mudah jika menconvert bilangan hexadecimal menjadi decimal. bagaimana jika kebalikannya ?
Mari kita ukur kekuatan dari basis 16 :160 = 1 | = 1 | |
161 = 16 | = 10 | |
162 = 256 | dalam hex... | = 100 |
163 = 4096 | = 1000 | |
164 = 65536 | = 10000 |
Nah mari kita ambil bilangan decimal, misal 8875.
Cari angka terbesar 16 yang mendekati atau sama dengan 8875: dalam kasus ini adalah 163.
The number of the highest power plus 1 tells us how long the resulting hexadecimal number is going to be, so in this case, 3+1 = 4 hexadecimal digits.
Now work out how many times 163 goes into 8875:
8875 / 4096 = 2.1667.... so 4096 goes into 8875 2 times and so the leftmost hexadecimal digit is 2.
Now work out the remainder of 8875 / 163:
Remainder = 8875 - (2*4096) = 683.
Now, decreasing the power, find out how many times 162 goes into 683:
683 / 256 = 2.6679.... so 256 goes into 683 2 times. Therefore the next hexadecimal digit is 2.
Now work out the remainder of 683 / 162:
Remainder = 683 - (2*256) = 171.
Now find out how many times 161 goes into 171:
171 / 16 = 10.6875 so 16 goes into 171 10 times. Therefore the next hexad ecimal digit is A (for 10).
Now work out the remainder of 171 / 161:
Remainder = 171 - (10*16) = 11.
Now we're below the base value, so the rightmost hexadecimal digit is B (for 11).
Stringing the hexadecimal digits together, we get 22AB as the hexadecimal equivalent of 887510.
Quick check:
2*4096 = 8192
2*256 = 512
10*16 = 160
11*1 = 11
8192 + 512 + 160 + 11 = 8875
Okey, pembahasan telah selesai, sekarang kita akan mencoba menjawab pertanyaan diatas. bagaimana bilangan decimal 233, dijadikan 1 byte bilangan hexadecimal (ingat, 1 byte = 2 bil hexadecimal ('0x') = 255 bil decimal('FF')
233 kita ambil bilangan terdekatnya 161, setelah itu kita hitung :
233 - 16 = berapa kali jatuh hingga menjadi angka terkecil. jawabanya adalah 14. 14 dalam arti hexadecimal adalah E.
233 - (16*14) = 9, sisa dari perhitungan tersebut adalah 9.
Jadi kita sudah menemukan jawabannya adalah E9.
Lebih mudahnya untuk menghitung angka yang sangat sangat besar adalah Calculator ! hahahahahaa, diatas hanyalah pengutaraan tentang konsep Decimal dan Hexadecimal. tidak mungkin jika kamu bisa menghitung 10000++ keatas dijadikan hexadecimal. oh yah, daripada kamu bilang hexadecimal, didalam dunia komputer lebih disingkat menjadi bilangan Hex.
Answer This Challenge
Comments :
0 komentar to “Challenge 'Didactic Byte' [Crypto]”
Post a Comment