Алгоритмы для перевода чисел из 2-ной системы в 16-ную и обратно.
Двоичное число разбиваем на четверки чисел справа налево. Для каждой четверки двоичного числа записываем его эквивалент из приведенной выше таблицы.
Пример. 1001 1011 01012= 9В516
Обратный перевод чисел очевиден, необходимо только аккуратно писать именно четверки двоичных чисел, дописывая при необходимости нули слева: 116.==00012, 216 ==00102. Незначащие нули слева от числа можно не писать.
Пример. 415С16==0100 0001 0101 11002=100 0001 0101 11002
Например 273,548 ®А2
010 111 011, 101 100 А=10111011,10112
Возможно и обратное преобразование. Для этого необходимо число дополнить слева и справа нулями, чтобы получилось по k разрядов.
Например
011 101, 111 110 1102
3 5 , 7 6 68
Простота этих алгоритмов позволяет программистам быстро и компактно записывать двоичные числа в 8-миричной и 16-тиричной системах. Поэтому они часто употребляются в разных современных приложениях (например, для обозначения цвета, адреса ячейки памяти и т.д.).
3 способ
Используется для перевода из любой системы счисления в десятичную: Вр ®А10
где Si–вес (цифра) в исходном числе;
i -индекс, меняется от 0 до n;
n-количество цифр в исходном числе;
p-система счисления, из которой производится перевод.
Например 3718 ®А10
надписываем над числом порядковый номер его цифр
2 1 0
3 7 18
Например переведем двоичное число 1 0 1 1 12 в десятичную систему счисления
надписываем над числом порядковый номер его цифр
4 3 2 1 0
1 0 1 1 12 образуем ряд слагаемых, как описано выше, и находим сумму 1*24+0*23+1*22+1*21+1*20 = 16+0+4+2+1=2310 Итак, 1 0 1 1 12 = 2310
Кодировка символов
Как мы видели в байте можно записать 256 различных комбинаций чисел, эти числа можно представить в 8-миричной, 16-тиричной или 10-ной системах счислений. Эти 256 чисел используются для кодирования некоторых команд компьютера, цифр, букв и математических символов. Кодировка применяемая в ОС Windows называется ANSI. В ней цифры от 0 до 9 кодируются соответственно числами 48..57 (числа даны в десятичной системе), латинские буквы соответственно числами 65..90, кириллица от А до Я закодирована числами 224..255. Пробел имеет код 32. Следовательно, в памяти компьютера название группы АВВА будет представлено как «65 66 66 65» в десятичной форме. Предложение «10 июля» как «49 48 32 232 254 239 255»
Объем информации
При записи любой текстовой информации в память компьютера используются указанные выше устройства, имеющие 2 устойчивых состояния. Для записи каждого символа используется один байт. Пересчитав символы в тексте, можно определить необходимый объем памяти в запоминающем устройстве. Байт слишком маленькая единица для измерений, поэтому ввели более крупные единицы и вся таблица единиц выглядит так:
1 Байт=8 Бит
1 КБ=1024 Байт или 1 КБ=1000 Бит
1МБ=1024 КБ или 1МБ=1000 КБ
1 ГБ=1024 МБ или 1 ГБ=1000 МБ
Слева написано точное выражение, связанное с 2-ной системой счисления (ближайшее к 1000 число в двоичной системе 210=1024), справа приближенное значение, которое обычно употребляется на практике.
Стандартная дискета имеет объем 1,44 МБ. Винчестер десятки ГБ.
Индивидуальные задания
Задание 1. Выполните расчеты и переведите числа из одной системы в другую, используя алгоритмы переводов
Вариант | 1.1 В документе А страниц, на каждой странице В символов. Какой объем информации в этом документе? Укажите точное значение. | 1.2 Представьте в более крупных единицах (точно) | 1.3 Переведите числа из 10-ной в 2-ную систему | 1.4 Переведите числа из 2-ной в 10-ную систему |
А=50, В=2048 | 1004 бит, 46508 байт | |||
А=40, В=1536 | 1200 бит, 51632 байт | |||
А=30, В=3072 | 1608 бит, 63658 байт | |||
А=40, В=3584 | 1600 бит, 46608 байт | |||
А=20, В=2048 | 1404 бит, 11536 байт | |||
А=20, В=3072 | 1228 бит, 25560 байт | |||
А=25, В=5632 | 1552 бит, 14608 байт | |||
А=45, В=5120 | 1650 бит, 36656 байт | |||
А=15, В=3072 | 1182 бит, 25560 байт | |||
А=43, В=3684 | 1680 бит, 76678 байт | |||
А=23, В=2048 | 1446 бит, 15836 байт | |||
А=39, В=4096 | 1278 бит, 82560 байт | |||
А=65, В=3072 | 1447 бит, 46508 байт | |||
А=57, В=2048 | 1608 бит, 29560 байт | |||
А=53, В=3072 | 1192 бит, 28560 байт | |||
А=48, В=3584 | 1605 бит, 6656 байт | |||
А=41, В=2048 | 8144 бит, 17536 байт | |||
А=51, В=3072 | 5128 бит, 22560 байт | |||
А=72, В=5632 | 9241 бит, 44524 байт | |||
А=56, В=4096 | 4527 бит, 25462 байт | |||
А=43, В=4608 | 6532 бит, 34562 байт | |||
А=68, В=3584 | 5612 бит, 68452 байт | |||
А=42, В=5632 | 5662 бит, 48222 байт | |||
А=77, В=6144 | 5678 бит, 3352 байт | |||
А=56, В=6656 | 5892 бит, 8562 байт | |||
А=34, В=6144 | 5644 бит, 8488 байт | |||
А=98, В=7168 | 5633 бит, 8490 байт | |||
А=67, В=4608 | 8812 бит, 9952 байт | |||
А=48, В=4096 | 5625 бит, 8465 байт | |||
А=75, В=5120 | 5671 бит, 8473 байт |
Задание 2. Выполните расчеты используя алгоритмы переводов чисел из одной системы счислений в другую:
Вариант | Переведите числа из одной системы счислений в другую: | ||||
2.1 из 2-ной в 8-ную | 2.2 из 8-ной в 2-ную | 2.3 из 2-ной в 16-ную | 2.4 из 16-ной в 2-ную | 2.5 из 8-ной в 16-ную | |
19AF FE29 | |||||
71D1 76BA | |||||
27FE 62A2 | |||||
42F1 FF11 | |||||
11FF DDA1 | |||||
99AA 17DA | |||||
45F6 65C2 | |||||
CC2A AD33 | |||||
CF91 D164 | |||||
D53A 16A2 | |||||
6CE1 189B | |||||
FA55 54C1 | |||||
B54A 56C4 | |||||
FE12 | |||||
C7D6 A241 | |||||
65D4 6B23 | |||||
F762 | |||||
B26E 651D | |||||
C625 98F1 | |||||
78CD 65BA | |||||
F661 C451 | |||||
B56A 890F | |||||
B54F 782A | |||||
AA69 B534 | |||||
892C 654F | |||||
65B1 76A8 | |||||
25B7 82C0 | |||||
B710 76C1 | |||||
60E3 B561 | |||||
90CD 110A |
Контрольные вопросы
1. Что называют основанием системы счисления?
2. Как определяется порядок цифры в числе при переводе в 10-ю систему?
3. Как образуются слагаемые?
4. Какой способ деления применяется при переводе числа из 2-й формы в 10-ю.
5. Назначение цикла в алгоритме?
6. Сколько раз выполняется деление при переводе числа?
- Как образуется результат?
- Что называют основанием системы счисления?
- Назовите цифры, применяемые в 2 ,7 и 16 –ной системах счислений.
- Сколько будет 1+1 в 2-ной системе счисления?
- Сколько будет 1+7 в 8-ной системе счисления?
- Сколько будет 7+9 в 16-ной системе счисления?
- Сколько будет А+6 в 16-ной системе счисления?
- Сколько байт занимает 1 символ в памяти компьютера? Сколько кодов можно создать в 1 байте?