Бит — это наименьшая единица измерения информации.
Технически, в компьютере самое маленькое объединение битов равно 8 .
Эту группу из 8 битов называют байтом (byte).
1 бит — наименьшая единица измерения информации
8 бит =1 B (байт)
1024 байт =1 KB (килобайт)
1024 килобайт =1 MB (мегабайт)
1024 мегабайт =1 GB (гигабайт)
1024 гигабайт =1 TB (терабайт)
1024 терабайт =1 PB (петабайт)
В килобайтах, мегабайтах и гигабайтах измеряют объём памяти, например, объём внешней памяти — 512 (MB).
Скорость передачи информации измеряют в битах, килобайтах или мегабайтах, например, в модеме она может быть 56 Kb/s, а в локальной сети — 10 или 100 Mb/s.
1 кбит =1000 бит.
Принципы сжатия данных
Как было сказано выше, одной из важных задач предварительной подготовки данных к шифрованию является уменьшение их избыточности и выравнивание статистических закономерностей применяемого языка. Частичное устранение избыточности достигается путём сжатия данных.
Сжатие информации представляет собой процесс преобразования исходного сообщения из одной кодовой системы в другую, в результате которого уменьшается размер сообщения. Алгоритмы, предназначенные для сжатия информации, можно разделить на две большие группы: реализующие сжатие без потерь (обратимое сжатие) и реализующие сжатие с потерями (необратимое сжатие).
Обратимое сжатие подразумевает абсолютно точное восстановление данных после декодирования и может применяться для сжатия любой информации. Оно всегда приводит к снижению объема выходного потока информации без изменения его информативности, то есть без потери информационной структуры. Более того, из выходного потока, при восстанавливающего или декомпрессирующего алгоритма, можно получить входной, а процесс восстановления называется декомпрессией или распаковкой и только после процесса распаковки данные пригодны для обработки в соответствии с их внутренним форматом. Сжатие без потерь применяется для текстов, исполняемых файлов, высококачественного звука и графики.
Необратимое сжатие имеет обычно гораздо более высокую степень сжатия, чем кодирование без потерь, но допускает некоторые отклонения декодированных данных от исходных. На практике существует широкий круг практических задач, в которых соблюдение требования точного восстановления исходной информации после декомпрессии не является обязательным. Это, в частности, относится к сжатию мультимедийной информации: звука, фото- или видеоизображений. Так, например, широко применяются форматы мультимедийной информации JPEG и MPEG, в которых используется необратимое сжатие. Необратимое сжатие обычно не используется совместно с криптографическим шифрованием, так как основным требованием к криптосистеме является идентичность расшифрованных данных исходным. Однако при использовании мультимедиа-технологий данные, представленные в цифровом виде, часто подвергаются необратимой компрессии перед подачей в криптографическую систему для шифрования. После передачи информации потребителю и расшифрования мультимедиа-файлы используются в сжатом виде (то есть не восстанавливаются).
1) 10001111110111110000(2) = 589296(10)
10001111110111110000(2) = 1∙2^19+0∙2^18+0∙2^17+0∙2^16+1∙2^15+1∙2^14+1∙2^13+1∙2^12+1∙2^11+1∙2^10+0∙2^9+1∙2^8+1∙2^7+1∙2^6+1∙2^5+1∙2^4+0∙2^3+0∙2^2+0∙2^1+0∙2^0= 524288+0+0+0+32768+16384+8192+4096+2048+1024+0+256+128+64+32+16+0+0+0+0 = 589296(10)
2) 11111110111110001(2) = 130545(10)
111111101111100012 = 1∙2^16+1∙2^15+1∙2^14+1∙2^13+1∙2^12+1∙2^11+1∙2^10+0∙2^9+1∙2^8+1∙2^7+1∙2^6+1∙2^5+1∙2^4+0∙2^3+0∙2^2+0∙2^1+1∙2^0 = 65536+32768+16384+8192+4096+2048+1024+0+256+128+64+32+16+0+0+0+1 = 130545(10)
2.Перевести два двоичных кода в шестнадцатеричные
1) 110111000001001(2) = 6E09(16)
Переводим двоичный в десятичную
110111000001001(2) = 1∙2^14+1∙2^13+0∙2^12+1∙2^11+1∙2^10+1∙2^9+0∙2^8+0∙2^7+0∙2^6+0∙2^5+0∙2^4+1∙2^3+0∙2^2+0∙2^1+1∙2^0 = 16384+8192+0+2048+1024+512+0+0+0+0+0+8+0+0+1 = 28169(10)
Теперь десятичную в шестнадцатеричную
28169/16 = 1760 (остаток 9)
1760/16 = 110 (остаток 0)
110/16 = 6 (остаток 14=E)
Собираем наши остатки и реверсируем (начиная с конечного равенства, т.е. с 6 (110/16=6)
ответ: 6E09(16)
2) 1101111111001(2) = 1BF9(16)
Сначала переводим в десятичную
1101111111001(2) = 1∙2^12+1∙2^11+0∙2^10+1∙2^9+1∙2^8+1∙2^7+1∙2^6+1∙2^5+1∙2^4+1∙2^3+0∙2^2+0∙2^1+1∙2^0 = 4096+2048+0+512+256+128+64+32+16+8+0+0+1 = 7161(10)
Теперь число 7161 переведём в шестнадцатеричную
7161/16 = 447 (остаток 9)
447/16 = 27 (остаток 15=F)
27/16 = 1 (остаток 11=B)
ответ: 1BF9(16)