Sistem bilangan heksadesimal. Mengonversi bilangan dari satu sistem bilangan ke sistem bilangan lainnya secara online

Sistem bilangan heksadesimal. Mengonversi bilangan dari satu sistem bilangan ke sistem bilangan lainnya secara online
Tabel 2.4.
Sistem pengkodean heksadesimal Sistem desimal sistem heksadesimal Sistem desimal
0 0 (0000) 10 Sistem desimal
1 1(0001) 11 SEBUAH (1010)
2 2 (0010) 12 B (1011)
3 3 (0011) 13 C (1100)
4 4 (0100) 14 D (1101)
5 5 (0101) 15 E (1110)
6 6 (0110) 16 10 (00010000)
7 7 (0111) 17 11 (00010001)
8 8 (1000) 18 12 (00010010)
9 9 (1001) 19 13 (00010011)

F(1111)

Untuk mengubah bilangan heksadesimal menjadi bilangan desimal, Anda perlu mengalikan nilai digit terendah (nol) dengan satu, nilai digit berikutnya (pertama) dengan 16, digit kedua dengan 256 (16 2), dst. , lalu tambahkan semua produk.

Misalnya, ambil nomor A17F:
Sistem pengkodean heksadesimal A17F=F*16 0 + 7*16 1 + 1*16 2 + A*16 3 = 15*1 + 7*16+1*256+10*4096=41343 sistem heksadesimal A17F=F*16 0 + 7*16 1 + 1*16 2 + A*16 3 = 15*1 + 7*16+1*256+10*4096=41343
0 0 (000) 10 12 (001010)
1 1(001) 11 13 (001011)
2 2 (010) 12 14 (001100)
3 3 (011) 13 15 (001101)
4 4 (100) 14 16 (001110)
5 5 (101) 15 17 (001111)
6 6 (110) 16 20 (010000)
7 7 (111) 17 21 (010001)
8 10 (001000) 18 22 (010010)
9 11 (001001) 19 23 (010011)

Tabel 2.5.

sistem pengkodean oktal

Selain kode-kode yang dibahas, ada juga yang disebut representasi bilangan biner-desimal. Seperti dalam kode heksadesimal, dalam kode BCD, setiap digit kode berhubungan dengan empat digit biner, namun setiap kelompok empat digit biner tidak dapat mengambil enam belas, tetapi hanya sepuluh nilai yang dikodekan oleh karakter 0, 1, 2, 3, 4 , 5, 6, 7, 8, 9. Artinya, satu tempat desimal sama dengan empat tempat desimal. Hasilnya, penulisan bilangan dalam kode desimal biner tidak berbeda dengan penulisan dalam kode desimal biasa (Tabel 2.6), namun kenyataannya hanyalah kode biner khusus yang setiap digitnya hanya dapat mengambil dua nilai: 0 dan 1. BCD terkadang sangat berguna untuk mengatur desimal indikator digital dan papan skor.

Tabel 2.6.
Sistem pengkodean heksadesimal Sistem pengkodean desimal biner sistem heksadesimal Sistem pengkodean desimal biner
0 0 (0000) 10 10 (00010000)
1 1(0001) 11 11 (00010001)
2 2 (0010) 12 12 (00010010)
3 3 (0011) 13 13 (00010011)
4 4 (0100) 14 14 (00010100)
5 5 (0101) 15 15 (00010101)
6 6 (0110) 16 16 (00010110)
7 7 (0111) 17 17 (00010111)
8 8 (1000) 18 18 (00011000)
9 9 (1001) 19 19 (00011001)

Sistem desimal biner Dalam kode biner, Anda dapat melakukan banyak hal dengan angka. operasi aritmatika

: penjumlahan, pengurangan, perkalian, pembagian.

Misalnya, menjumlahkan dua bilangan biner 4-bit. Mari kita jumlahkan angka 0111 (desimal 7) dan 1011 (desimal 11). Menambahkan angka-angka ini tidak lebih sulit daripada notasi desimal:

Jika dijumlahkan 0 dan 0 kita mendapat 0, jika dijumlahkan 1 dan 0 kita mendapat 1, jika dijumlahkan 1 dan 1 kita mendapat 0 dan dibawa ke angka berikutnya 1. Hasilnya adalah 10010 (desimal 18). Saat menjumlahkan dua bilangan biner n-bit, hasilnya dapat berupa bilangan n-bit atau (n+1) -bit.

Pengurangan dilakukan dengan cara yang sama. Misalkan angka 0111 (7) dikurangkan dari angka 10010 (18). Kami menulis angka-angka yang disejajarkan dengan digit terkecil dan melakukan pengurangan dengan cara yang sama seperti dalam kasus sistem desimal:

Saat mengurangkan 0 dari 0 kita mendapatkan 0, saat mengurangkan 0 dari 1 kita mendapatkan 1, saat mengurangkan 1 dari 1 kita mendapatkan 0, saat mengurangkan 1 dari 0 kita mendapatkan 1 dan meminjam 1 pada digit berikutnya. Hasilnya adalah 1011 (desimal 11). Saat melakukan pengurangan, dimungkinkan untuk mendapatkan angka negatif, jadi Anda harus menggunakannya representasi biner

angka negatif. Untuk secara bersamaan mewakili bilangan biner positif dan biner negatif, yang disebut . Bilangan negatif pada kode ini dinyatakan dengan bilangan yang bila dijumlahkan dengan bilangan positif yang nilainya sama akan menghasilkan nol. Untuk mendapatkan bilangan negatif, Anda perlu mengubah semua bit dari bilangan positif yang sama ke bit yang berlawanan (0 menjadi 1, 1 menjadi 0) dan menambahkan 1 pada hasilnya. Angka 5 dalam kode biner terlihat seperti 0101. Kita ganti bitnya dengan bit yang berlawanan: 1010 dan tambahkan satu: 1011. Kita jumlahkan hasilnya dengan angka asli: 1011 + 0101 = 0000 (abaikan transfer ke digit kelima) .

modulo 2 dua bilangan biner 0111 dan 1011:

Operasi bitwise lainnya pada bilangan biner mencakup fungsi AND dan fungsi OR. Fungsi AND menghasilkan satu hanya jika bit-bit yang bersesuaian dari dua bilangan asli sama-sama satu, jika tidak, hasilnya adalah -0. Fungsi OR menghasilkan hasil satu ketika setidaknya salah satu bit yang sesuai dari bilangan asli sama dengan 1, jika tidak maka hasilnya adalah 0.

Sistem bilangan yang familiar bagi manusia adalah desimal. Ini didasarkan pada sepuluh digit dari 0 hingga 9. Sistem heksadesimal dibedakan dengan adanya enam huruf pertama alfabet Latin untuk menulis angka selain angka dasar. Artinya, angka 9 diikuti dengan simbol “A”, yang sesuai dengan angka 10 untuk sistem desimal. Oleh karena itu, F dalam heksadesimal adalah 16 dalam desimal. Penggunaan enam belas karakter dalam sistem bukanlah pilihan acak.

Satuan informasinya sedikit. Delapan bit membentuk satu byte. Ada konsep seperti kata mesin - unit data yang mewakili dua, yaitu enam belas bit. Jadi, dengan menggunakan enam belas simbol berbeda, dimungkinkan untuk menggambarkan informasi apa pun yang akan menjadi partikel terkecil selama pertukaran data. Anda dapat melakukan operasi aritmatika apa pun dengan mereka, dan hasilnya juga akan diperoleh dalam sistem heksadesimal.

Untuk membedakan suatu bilangan yang ditulis dalam heksadesimal, huruf “h” atau subskrip"16".

Aplikasi

Paling aplikasi yang luas sistem bilangan heksadesimal - ini adalah kode kesalahan produk perangkat lunak, Misalnya, sistem operasi. Angka-angka yang terkandung dalam kode-kode ini distandarisasi. Memiliki tabel khusus, Anda selalu dapat menentukan apa sebenarnya arti kesalahan ini atau itu.

Dalam bahasa tingkat rendah, yang sedekat mungkin dengan kode mesin, sistem heksadesimal digunakan untuk menulis program. Banyak programmer juga menggunakannya ketika bekerja dengan bahasa tingkat tinggi, karena angka-angka dalam sistem ini, menggunakan tabel korespondensi khusus, dengan mudah diubah menjadi sistem biner yang menjadi dasar pengoperasian semua teknologi digital. Informasi apa pun di komputer, baik itu file musik atau dokumen teks, setelah diterjemahkan, diwakili oleh urutan kode biner asli, dan lebih mudah untuk melihatnya diwakili oleh simbol heksadesimal.

Juga salah satu kegunaan karakter heksadesimal adalah deskripsi skema warna, yaitu tiga komponen R, G, B dijelaskan dengan cara yang sesuai dengan sistem yang diberikan. Pendekatan pencatatan ini disebut warna heksadesimal

Kemampuan untuk melihat program dalam kode heksadesimal memungkinkan Anda melakukan debug, membuat perubahan, dan penyerang menggunakan pendekatan ini untuk meretas program.

Sekarang ada langkah yang sangat mudah terkait dengan sistem bilangan heksadesimal. Dalam hal ini, kami harap Anda menduga, dan mungkin memang benar, bahwa kita sekarang memiliki 16 digit berbeda.

Namun, seperti yang kita ketahui, hanya ada sepuluh angka tradisional (“Arab”). Dan itu membutuhkan enam belas. Ternyata enam karakter hilang.

Komentar
Dengan demikian, tugas desain murni muncul pada topik "Tanda" - untuk menemukan simbol angka yang hilang
.

Ini berarti bahwa pada suatu waktu para spesialis perlu menemukan beberapa tanda baru. Namun pada suatu waktu, di awal era komputer, tidak banyak pilihan tanda. Pemrogram hanya memiliki angka dan huruf. Oleh karena itu, mereka mengambil jalur dasar: mereka mengambil huruf pertama alfabet Latin sebagai angka, apalagi secara historis ini bukan pertama kalinya (kami telah menyebutkan bahwa pada awalnya banyak orang menggunakan huruf daripada angka).

Komentar
Kami berharap semua orang mengerti mengapa dalam hal ini tidak mungkin menggunakan, misalnya angka “10”, “11”, “12”, dll? Karena kalau bicara sistem bilangan heksadesimal, pastinya enam belas angka, bukan angka
.

Dan angka desimal “10” mulai dilambangkan dengan huruf latin “A” (lebih tepatnya “angka A”). Oleh karena itu, angka “B”, “C”, “D”, “E” dan “P” muncul berikutnya.

Karena kami bermaksud membangun sistem heksadesimal, dimulai dari nol, jumlahnya tepat 16 digit. Misalnya angka "D" adalah angka desimal "13", dan angka "F" adalah angka desimal "15".

Ketika kita menjumlahkan satu pada bilangan heksadesimal “F”, maka karena digit tersebut sudah habis, kita masukkan “O” pada digit tersebut, dan pindahkan satu ke digit berikutnya, sehingga diperoleh bilangan desimal “16 ” akan diwakili dalam sistem bilangan heksadesimal dengan angka "10", mis. ternyata menjadi "sepuluh heksadesimal". Mari kita gabungkan bilangan desimal dan heksadesimal menjadi satu tabel (Tabel 4.5).

Tabel 4.5. Mencocokkan angka desimal dan heksadesimal.

Angka desimal Angka heksadesimal Angka desimal Angka heksadesimal
0-9 0-9 29 1D
10 A 30 1E
11 DI DALAM 31 1F
12 DENGAN 32-41 20-29
13 D 42-47 2A-2F
14 E 48-255 30-FF
15 F 256 100
16 10 512 200
17-25 11-19 1024 400
26 1A 1280 500
27 1B 4096 1000
28 1C

Sistem heksadesimal digunakan untuk menulis lebih kompak informasi biner. Faktanya, “hex ribuan”, yang terdiri dari empat digit, menempati tiga belas digit dalam biner (1000 16 = 1000000000000 2).

Ketika membahas sistem bilangan, “puluhan”, “ratusan”, dan “ribuan” berulang kali muncul, sehingga perlu memperhatikan apa yang disebut bilangan “bulat”.

Sistem bilangan heksadesimal memiliki alfabet yang terdiri dari 16 digit:

0, 1, 2, 3, 4, 5, 6, 7, 8, 9, A, b, c, d, e, f.

Saat menulis suatu bilangan dalam sistem heksadesimal, huruf A, B, C, D, E, F masing-masing digunakan untuk menulis angka-angka yang melambangkan bilangan 10, 11, 12. 13, 14. 15.

Mengubah bilangan dari heksadesimal ke desimal

Anda dapat mengonversi bilangan heksadesimal apa pun ke desimal menggunakan rumus yang sudah diketahui

Contoh.

    AE07 16 =10∙16 3 +14∙16 2 +0∙16 1 +7∙16 0 =44551 10 .

    100 16 =1∙16 2 +0∙16 1 +0∙16 0 =256 10 .

    58 16 =5∙16 1 +8∙16 0 =.88 10 .

    2A 16 =2∙16 1 +10∙16 0 =42 10.

Konversi bilangan dari sistem desimal ke heksadesimal dilakukan dengan cara yang sama seperti ke biner.

Mengubah bilangan dari heksadesimal ke biner dan sebaliknya

Anda dapat mengonversi bilangan heksadesimal apa pun ke biner sebagai berikut. Setiap digit bilangan heksadesimal ditulis sebagai bilangan biner empat digit - buku catatan. Setelah ini, angka nol di sebelah kiri dapat dibuang.

2) 2A= 0010 1010 2 = 101010 2 .

3) 58 16 = 0101 1000 2 = 1011000 2 .

Sebaliknya, Anda dapat mengonversi bilangan biner apa pun menjadi heksadesimal dengan cara yang sama. Setiap empat digit biner, dihitung dari kanan ke kiri, ditulis sebagai satu digit heksadesimal. Nomor-nomor ini juga terletak dari kanan ke kiri.

Contoh.

2.101010 2 = 10 1010 2 = 2A.

3. 1011000 2 = 101 1000 2 = 58 16 .

Sistem bilangan oktal

Sistem bilangan oktal memiliki alfabet yang terdiri dari 8 digit:

0, 1, 2, 3, 4, 5, 6, 7.

Konversi bilangan dari sistem desimal ke oktal dan sebaliknya dilakukan dengan cara yang sama seperti konversi ke/dari biner.

Mengubah bilangan dari oktal ke biner dan sebaliknya

Setiap digit bilangan oktal ditulis sebagai bilangan biner tiga digit - tiga serangkai.

Contoh.

2563 8 = 010 101 110 011 2 =10101110011 2 .

1001101 2 = 001 001 101 2 = 115 8 .

Materi metodologi pelajaran laboratorium No.1

Topik pelajaran laboratorium: Sistem bilangan. Mengukur informasi.

Jumlah jam: 2.

Contoh dengan solusi

    Terjemahan dariP -sistem ary ke sistem 10-ary. Misalkan kita perlu mengubah suatu bilangan dalam sistem bilangan tertentu menjadi desimal. Untuk melakukan ini, Anda perlu merepresentasikannya dalam formulir

11100110 2 = 1∙2 7 + 1∙2 6 + 1∙2 5 + 0∙2 4 + 0∙2 3 + 1∙2 2 + 1∙2 1 + 0∙2 0 = 128 + 64 + 32 + 4 + 2 = 230 10 .

2401 5 = 2∙5 3 + 4∙5 2 + 0∙5 1 + 1∙5 0 = 250 + 100 + 0 + 1 = 351.

    Konversi dari sistem 10 digit keP -ichnaya.

2.1 98 10 → X 2.

Bagilah bilangan tersebut dengan 2. Kemudian bagi hasil bagi tidak lengkap dengan 2. Kita lanjutkan hingga hasil bagi tidak lengkap menjadi kurang dari 2, yaitu. sama dengan 1.

    98: 2 = 49. Sisa - 0 .

    49: 2 = 24. Sisa - 1 .

    24: 2 = 12. Sisa - 0 .

    12: 2 = 6. Sisa - 0 .

    6: 2 = 3. Sisa - 0 .

    3: 2 = 1 . 1 .

Sisa -

2.2 Karena hasil bagi parsial terakhir adalah 1, prosesnya selesai. Kita tuliskan semua sisanya dari bawah ke atas, dimulai dengan hasil bagi tidak lengkap terakhir, dan kita mendapatkan bilangan 1100010. Jadi 98 10 = 1100010 2.

2391 10 → X 16.

    Bagilah bilangan tersebut dengan 16. Kemudian bagi hasil bagi parsial dengan 16. Lanjutkan hingga hasil bagi parsial kurang dari 16. 7 .

    149: 16 = 9 . 5 .

2391: 16 = 149. Sisa -

2.3 Karena hasil bagi parsial terakhir (9) kurang dari 16, maka prosesnya selesai. Kita tuliskan, mulai dari hasil bagi tidak lengkap terakhir, semua sisanya dari bawah ke atas dan kita peroleh bilangan 957. Jadi 2391 10 = 957 16.

12165 10 → X 2.

12165 10 = 27605 8 = 010 111 110 000 101 = 10111110000101.

    Jika Anda mengonversi berdasarkan pembagian ke sistem biner, Anda mendapatkan proses yang agak rumit. Anda dapat mengubah bilangan tersebut menjadi oktal terlebih dahulu, lalu mengganti angka oktal dari kanan ke kiri dengan triad.P .

Menentukan basis suatu sistem bilangan

Seorang anak laki-laki menulis tentang dirinya: “Saya mempunyai 24 jari, 5 di masing-masing tangan, dan 12 di kaki saya.” Bagaimana ini bisa terjadi? P Larutan. Penting untuk menentukan basis sistem bilangan P =1∙P. Karena kita tahu hanya ada 10 jari kaki 10, maka 12 P + 2 = 10  P+2 = 10 10 . Dari sini kita mendapatkan persamaannya

= 8. Jadi yang dimaksud anak laki-laki itu adalah bilangan dalam sistem oktal. Memang ada 24 8 = 2∙8+4 = 20 10 jari kaki, dan 12 8 = 1∙8+2 = 10 10 jari kaki. Berasal dari Babilonia kuno. Di India, sistem ini bekerja dalam bentuk penomoran desimal posisional menggunakan nol, di kalangan umat Hindu sistem ini

nomor-nomor tersebut dipinjam oleh negara-negara Arab, dan orang-orang Eropa, pada gilirannya, mengambilnya dari mereka. Di Eropa, sistem ini mulai disebut Arab.Sistem posisiperhitungan mati

— arti semua angka bergantung pada posisi (digit) angka tertentu dalam bilangan tersebut.Contoh453 , sistem bilangan desimal standar adalah sistem posisi. Katakanlah diberi nomor 4 . Nomor400, 5 singkatan dari ratusan dan sesuai dengan angka50 - jumlah puluhan dan sesuai dengan nilainya 3 - satuan dan makna3 . Sangat mudah untuk melihat bahwa seiring bertambahnya angka, nilainya pun meningkat. Jadi, kami menulis angka yang diberikan sebagai jumlah400+50+3=453.

Sistem bilangan heksadesimal.

Sistem bilangan heksadesimal(bilangan heksadesimal) - sistem bilangan posisi. Basis heksadesimal adalah angka 16.

Dengan menuliskan bilangan dalam sistem bilangan oktal kita mendapatkan ekspresi yang cukup kompak, namun dalam sistem heksadesimal kita mendapatkan ekspresi yang lebih kompak.

Sepuluh digit pertama dari enam belas digit heksadesimal adalah spasi standar 0 - 9 , enam digit berikutnya dinyatakan menggunakan huruf pertama alfabet Latin: A, B, C, D, E, F. Konversi dari heksadesimal ke biner dan sebaliknya mirip dengan proses oktal.

Penerapan sistem bilangan heksadesimal.

Sistem bilangan heksadesimal cukup baik digunakan pada komputer modern, Misalnya gunakan untuk menunjukkan warna: #FFFFFF- warna putih.

Mengubah bilangan dari satu sistem bilangan ke sistem bilangan lainnya.

Mengubah bilangan dari heksadesimal ke desimal.

Untuk mengubah bilangan heksadesimal menjadi bilangan desimal, Anda perlu mereduksi bilangan tersebut menjadi bentuk penjumlahan dari hasil kali pangkat basis sistem bilangan heksadesimal dengan digit-digit yang bersesuaian dalam digit-digit bilangan heksadesimal.

Misalnya, konversikan bilangan heksadesimal 5A3 ke desimal. Di Sini 3 angka. Berdasarkan aturan di atas, kami mereduksinya menjadi bentuk penjumlahan pangkat dengan basis 16:

5A3 16 = 3·16 0 +10·16 1 +5·16 2 = 3·1+10·16+5·256 = 3+160+1280 = 1443 10

Mengubah bilangan dari biner ke heksadesimal dan sebaliknya.

Untuk menerjemahkan polisemantik bilangan biner dalam sistem heksadesimal, Anda perlu membaginya menjadi tetrad dari kanan ke kiri dan mengganti semua tetrad dengan digit heksadesimal yang sesuai. Untuk mengonversi bilangan dari sistem heksadesimal ke sistem biner, Anda perlu mengubah setiap digit ke tetrad yang sesuai dari tabel konversi, yang dapat Anda temukan di bawah.

Misalnya:

010110100011 2 = 0101 1010 0011 = 5A3 16

Tabel konversi angka.

Algoritma untuk mengkonversi bilangan dari satu sistem bilangan ke sistem bilangan lainnya.

1. Dari sistem bilangan desimal:

  • membagi bilangan dengan basis sistem bilangan yang diterjemahkan;
  • temukan sisanya saat membagi bagian bilangan bulat dari suatu bilangan;
  • tuliskan semua sisa pembagian dalam urutan terbalik;

2. Dari sistem bilangan biner:

  • untuk mengonversi ke sistem bilangan desimal, kita mencari jumlah hasil kali basis 2 dengan derajat digit yang sesuai;
  • Untuk mengubah suatu bilangan menjadi oktal, kita membagi bilangan tersebut menjadi triad.

Misalnya, 1000110 = 1.000.110 = 1068

  • Untuk mengubah suatu bilangan dari sistem bilangan biner ke heksadesimal, kita membagi bilangan tersebut menjadi kelompok yang terdiri dari 4 digit.

Misalnya, 1000110 = 100 0110 = 4616.

Tabel terjemahan:

SS biner

SS heksadesimal

0000

0001

0010

0011

0100

0101

0110

0111

1000

1001

1010

1011

1100

1101

1110

1111

SS biner