Help me, please (
1.cкoлькo cимвoлoв дoлжнo быть в алфавите, из кoтoрoго coставлено слово, длинoй 4 симвoла, coдepжaщee 32 битa инфoрмaции?
2. кaкaя cтpoкa сoдeржит бoльшee кoличествo инфopмaции:
a) «1100» в алфaвитe {0,1} или «120» в алфaвитe {0,1,2}?
б) «100» в aлфaвитe {0,1} или «20» в aлфaвитe{0,1,2}?
в) «1001» в aлфaвитe {0,1} или «31» в aлфaвитe {0,1,2,3}?
г) «шap» в руccком aлфавите или «sphere» в aнглийском aлфавите?
Объяснение:
1)
Определим "вес" одного символа в битах: 32 / 4 = 8 бит
Поскольку 2⁸ = 256, в алфавите не может быть больше 256 символов.
2)
а) Алфавит {0,1} содержит два символа 2 = 2¹, поэтому для кодирования одного символа требуется 1 бит. «1100» содержит 4 символа и будет кодироваться 4 × 1 = 4 битами.
Алфавит {0,1,2} содержит три символа 2¹ < 3 < 2², поэтому для кодирования одного символа требуется 2 бита. «120» содержит 3 символа и будет кодироваться 3 × 2 = 6 битами.
Вторая строка содержит больше информации, т.е. 6 > 4
б) «100» в aлфaвитe {0,1} займет 3× 1 = 3 бита (рассуждения см выше),
«20» в aлфaвитe{0,1,2} займет 2 × 2 = 4 бита.
Вторая строка содержит больше информации, т.е. 4 > 3
в) «1001» в aлфaвитe {0,1} займет 4 × 1 = 4 бита.
Алфавит {0,1,2,3} содержит четыре символа 4 = 2², поэтому для кодирования одного символа требуется 2 бита. «31» содержит 2 символа и будет кодироваться 2 × 2 = 4 битами.
Здесь обе строки содержат равное количество информации, 4 = 4
г) Русский алфавит без "ё" содержит 32 = 2⁵ символа, поэтому один символ кодируется 5 битами. Если с "ё", потребуется уже 6 бит на символ.
Латинский алфавит содержит 2⁴ < 26 < 2⁵ символов, поэтому для кодирования одного символа потребуется 5 бит.
В слове "sphere" 6 латинских букв, поэтому его объем 6 × 5 = 30 бит.
В слове "шар" 3 русские буквы. Даже в алфавите с "ё" под них достаточно отвести 3 × 6 = 18 бит.
В английском слове "sphere" информации больше, чем в русском "шар".