Coding for Dummies, Bagian 1

Tidak menjadi ahli di bidang yang ditentukan, saya, bagaimanapun, membaca banyak literatur khusus untuk berkenalan dengan subjek dan, menerobos duri ke bintang, mengisi, pada tahap awal, banyak kerucut. Dengan semua informasi yang berlimpah, saya tidak dapat menemukan artikel sederhana tentang pengkodean seperti itu, di luar lingkup literatur khusus (boleh dikatakan, tanpa rumus dan dengan gambar).





Artikel, di bagian pertama, adalah program pendidikan tentang pengkodean seperti itu dengan contoh manipulasi dengan kode bit, dan di bagian kedua saya ingin menyentuh cara paling sederhana untuk menyandikan gambar.





0. Awal

Karena saya membahas para pemula dalam hal ini, saya tidak akan menganggap memalukan untuk merujuk ke Wikipedia. Dan di sana, untuk menunjukkan pengkodean informasi, kami memiliki definisi seperti itu - proses mengubah sinyal dari bentuk yang sesuai untuk penggunaan informasi secara langsung menjadi bentuk yang nyaman untuk transmisi, penyimpanan, atau pemrosesan otomatis.





Apa yang saya kurang di tahun 70-an dan 80-an adalah di sekolah, meskipun bukan dalam ilmu komputer, tetapi, misalnya, dalam pelajaran matematika - informasi dasar tentang pengkodean. Faktanya adalah bahwa kita masing-masing terlibat dalam informasi pengkodean setiap detik, secara konstan dan secara umum - tanpa berkonsentrasi pada pengkodean itu sendiri. Artinya, dalam kehidupan sehari-hari kita melakukannya sepanjang waktu. Jadi bagaimana ini bisa terjadi?





Mimikri, gerak tubuh, ucapan, sinyal dari berbagai tingkatan - tanda dengan tulisan, tanda di jalan, lampu lalu lintas, dan untuk dunia modern - kode batang dan batang, URL, tag hash.





Mari kita lihat beberapa lebih detail.





1.1 Ucapan, ekspresi wajah, gerak tubuh

, - . , , . , . , , - , , , .





, ? - , , - . , , , , , , , - , , .





, - , .





1.2

Ping India

. . , , "/". , .





, . ( ), , , - . "-", "A" - "--" "ET".





1.3

, , - , , . ? , , , , , , , . - , - , - . , , , , , , 1 , - .





2.

. , , - . , , - 8 .





256 , 0 255. , ( ) 00000000, 255 11111111. , 00000001.





, 26 26 , 10 . , ( ) .





" ".





2.1

8 , , , . , , :

















18









12









11









11









9









8









4









3









2









2









2









2









1









1









1









1









1









1









1





19 ( ). 18+12+11+11+9+8+4+3+2+2+2+2+1+1+1+1+1+1+1=91 (91*8=728 ).





. , 256 19. - 19 LOG2(19)=4.25, , 5, 32 ( 4 , 16 ).





, 91*5=455 , 37.5%.





, . .





, 19 32 , .





2.2

. - , . :













,









18





0









12





1









11





00









11





01









9





10









8





11









4





000









3





001









2





010









2





011









2





100









2





101









1





110









1





111









1





0000









1





0001









1





0010









1





0011









1





0100





179 .





, , , . , "111", "", "", "" "".





2.3

- , , . . - , / .





:













,









18





0000









12





0001









11





0010









11





0011









9





0100









8





0101









4





0110









3





0111









2





10001









2





10010









2





10011









2





10100









1





10101









1





10110









1





10111









1





11000









1





11001









1





11010









1





11011





, , 0 - , 1 - . , 379 . 455 .





2 , 4 :













,









18





000









12





001









11





0100









11





0101









9





0110









8





0111









4





10000









3





10001









2





10010









2





10011









2





10100









2





10101









1





10110









1





10111









1





11000









1





11001









1





11010









1





11011









1





11100





00 - 1 , 01 - 2 , 10 11 - 3 . - 356 .





, , , 455 379, 356 .





2.4

. , .





, . .





















18





00









12





101









11





100









11





011









9





010









8





1111









4





11011









3





11001









2





111011









2





111010









2





111001









2





111000









1





1101011









1





1101010









1





1101001









1





1101000









1





1100011









1





1100010









1





110000





- 328 .





, 6 7 , , .





2.5.1

, . .





: " ".





:

















18









3









2









2









2









2









1









1









1









1









1









1









1









1





, - , , , .





:





















3





0









2





1









2





2









2





3









2





4









1





5









1





6









1





7









1





8









1





9









1





10









1





11









1





12





:





7, 0, 12, 3, 5, 0, 1, 9, 2, 10, 0, 4, 1, 3, 2, 8, 4, 6, 11





, , - . .





4 ( 0 15), , , . , , , , , 5 , 3 , , - . :





/





/





/





0 / 4





/ 18





/ 2





1 / 4





/ 5





/ 2





2 / 4





/ 10





/ 2





3 / 4





/ 12





/ 2





4 / 4





/ 12





/ 2





5 / 4





/ 31





/ 2





6 / 4





/ 17





/ 2





7 / 4





/ 20





/ 2





8 / 4





/ 10





/ 2





9 / 4





/ 18





/ 2





10 / 4





/ 26





/ 2





11 / 4





/ 17





/ 2





12 / 4





/ 21





/ 2





7





0





12





3





5





0





1





9





2





10





0





4





1





3





2





8





4





6





11





4 .





Kami menghitung semuanya bersama-sama dan mendapatkan 371 bit. Dalam kasus ini, pesan itu sendiri dikodekan dalam 19 * 4 = 76 bit. Tapi kita masih perlu menjaga konsistensi kode dan simbol Huffman, seperti pada semua kasus sebelumnya.





Kata Penutup

Saya harap artikel ini akan memberi Anda kesan umum tentang pengkodean dan menunjukkan bahwa ini bukan hanya petugas enkripsi militer atau algoritma kompleks untuk para jenius matematika.





Dari waktu ke waktu saya menemukan bagaimana siswa mencoba memecahkan masalah pengkodean dan tidak bisa abstrak, muncul dengan pendekatan kreatif untuk proses ini. Tetapi coding itu seperti gaya rambut atau celana mewah, yang dengan cara ini menunjukkan kode sosial kita.








All Articles