и т д.
В каком же диапазоне изменяются наши 256 байтов? Очевидно, что от 0000 0000 до 1111 1111, при переводе в десятичную систему – от 0 до 255.
Не спутайте биты с байтами! Бит состоит из одной двоичной цифры, и разных битов всего два: 0 и 1. Байт содержит ровно восемь цифр, не больше и не меньше. А сколько всего имеется разных байтов? Это легко выяснить из предыдущей таблицы: 256.
Оп-па! Получили второе мистическое компьютерное число – 256. С ним мы еще столкнемся в других главах.
Компьютер все время работает с байтами, обычно ими легче оперировать. Но по мере развития прогресса компьютеры становились все мощнее и мощнее, все мозговитее и мозговитее. Байтов в них становилось все больше и больше. Сейчас их уже так много, что разработана целая система так называемых производных единиц от байта.
Короче, сначала придумали третье компьютерное число, равное 2>10 = 1024. Почему такое? Очень просто. Во-первых, круглая степень – 10. Во-вторых, 1024 почему-то почти равно 1000. А 1000 – это основание для обычных производных единиц: 1 километр равен 1000 метров, 1 килограмм равен 1000 граммов. Дело даже дошло до того, что один немецкий компьютерный журнал поместил изображение 1 киломарки, равной 1024 марки…
Затем постановили, что 1024 байта равны одному – правильно! – килобайту. А 1024 килобайта равны 1 мегабайту, и т. д. Все имеющиеся производные единицы байта находятся в следующей таблице:
Только будьте внимательны при использовании производных единиц! Полностью их имена пишутся с маленькой буквы, а сокращенно – с большой (но байт сокращается до маленькой буквы):
1 килобайт = 1 Кбайт =1 К = 2>10 б;
1 мегабайт = 1 Мбайт = 1 М = 2>10 К = 2>20 б;
1 гигабайт = 1 Гбайт = 1 Г = 2>10 М = 2>20 К = 2>30 б.
Как же перевести число из привычной нам десятичной системы в двоичную?
Проще всего – с помощью инженерного калькулятора. Если же такового под рукой не окажется, можно произвести это преобразование посредством обычной бумаги и карандаша.
Наиболее известный и простой способ перевода из десятичной системы в двоичную осуществляется в десятичной системе путем деления на 2 – на основание двоичной системы. Приведем алгоритм перевода чисел из десятичной системы в двоичную, состоящий из двух шагов.
1. Число в десятичной системе делится на 2. Получаем частное и остаток. Частное снова делится на 2. Снова получаем частное и остаток. Опять делим новое частное на 2. И т. д. Остатки от деления – цифры 0 и 1 – являются цифрами соответствующего двоичного числа, записанными справа налево.
2. Процесс деления прекращается, когда частное становится равным нулю.
Примеры перевода чисел из десятичной системы в двоичную представлены ниже. В случае а) у нас 20>10 = 10100>2. В другом случае б) получается 30>10 = 11110>2.
А наоборот?
Наиболее прост такой способ превращения двоичного числа в десятичное. Подпишем под последней цифрой двоичного числа десятичное число 2>0 = 1, под второй цифрой справа – число 2>1 = 2, следующей – число 2>2 = 4, под четвертой – число 2>3 = 8 и т д. Затем просто сложим те десятичные числа – степени двойки, – над которыми стоят двоичные цифры 1.
Например:
10101000>2 = 128>10 + 32>10 + 8>10 = 168>10
Шестнадцатеричная система
Кроме двоичной системы счисления, в компьютерной практике также используется шестнадцатеричная система. На практике она используется даже чаще, чем двоичная: при задании цветов страницы сайта, при доступе к символам современных двухбайтовых шрифтов, при программировании, особенно на ассемблере… Дело в том, что байт кодируется в точности двузначным шестнадца-теричным числом, что гораздо более просто и читабельно, чем в двоичной системе. Но об этом ниже.