Проверим наши математические выкладки:
В (11) * 4096 = 45 056
1 * 256 = 256
D (13) * 16 = 208
7 * 1 = 7
Всего 45 527
Для проверки ускоренного метода перевода возьмем двоичное число 1011000111010111, разделим его на группы по четыре знака: 1011 0001 1101 0111. Каждая из четырех групп затем преобразуется в шестнадцатеричное число:
1011 =
1 x 1 = 1
1 x 2 = 2
0 x 4 = 0
1 x 8 = 8
Всего: 11
Шестнадцатеричное: В
0001 =
1 x 1 = 1
0 x 2 = 0
0 X 4 = 0
0 x 8 = 0
Всего: 1
Шестнадцатеричное: 1
1101 =
1 x 1 = 1
0 x 2 = 0
1 x 4 = 4
1 x 8 = 8
Всего: 13
Шестнадцатеричное: D
0111 =
1 X 1 = 1
1 X 2 = 2
1 x 4 = 4
0 x 8 = 0
Всего: 7
Шестнадцатеричное: 7
Итак, получаем шестнадцатеричное число B1D7
Приложение Г - Ответы
День 1
Контрольные вопросы
1. В чем разница между интерпретаторами и компиляторами?
Интерпретаторы считывают исходный код программы строка за строкой и преобразуют его непосредственно в машинные команды. Компиляторы преобразуют код источника в исполняемую программу, которая может быть выполнена в более позднее время.
2. Как происходит компиляция исходного кода программы?
Каждый компилятор имеет свои особенности. Обязательно ознакомьтесь с документацией, которая прилагается к вашему компилятору.
3. В чем состоит назначение компоновщика?
Задача компоновщика — связать скомпилированный код программы с элементами, взятыми из стандартных библиотек, предоставленных фирмой — изготовителем компилятора, и другими источниками. Компоновщик позволяет формировать отдельные модули программы, а затем соединять эти части в одну большую программу.
4. Какова обычная последовательность действий в цикле разработки?
Редактирование исходного кода, компиляция, компоновка, тестирование, повторение перечисленных выше действий.
Упражнения
1. Инициализирует две целочисленные переменные, а затем выводит их сумму и произведение.
2. Ознакомьтесь с документацией, которая прилагается к вашему компилятору.
3. В первой строке перед словом include нужно поместить символ #.
4. Эта программа выводит на экран слова Hello World, которые завершаются символом разрыва строки.
День 2
Контрольные вопросы
1. В чем разница между компилятором и препроцессором?
При каждом запуске компилятора первым запускается препроцессор. Он читает исходный код и включает указанные вами файлы, а также выполняет другие вспомогательные операции. Подробно функции препроцессора рассматриваются на занятии 18.
2. В чем состоит особенность функции main()?
Функция main() вызывается автоматически при каждом выполнении программы.
3. Какие два типа комментариев вы знаете и чем они отличаются друг от друга?
Строки комментариев в стиле C++ задаются двумя символами слеша (//), которые блокируют любой текст до конца текущей строки. Комментарии в стиле языка С заключаются в пары символов (/* */), и все, что находится между этими символами, блокируется от выполнения компилятором. Следует внимательно отнестись к использованию пар символов комментариев, чтобы не заблокировать целый блок программы.
4. Могут ли комментарии быть вложенными?
Да, комментарии в стиле C++ могут быть вложены внутрь комментариев в стиле С. Можно также комментарии в стиле С вкладывать внутрь комментариев в стиле C++, но при этом следует помнить, что комментарии в стиле C++ заканчиваются в конце текущей строки.
5. Могут ли комментарии занимать несколько строк?
Это позволено лишь комментариям в стиле С. Если же вы хотите продолжить на следующей строке комментарии в стиле C++, необходимо поставить в начале второй строки еще одну пару символов (//).
Упражнения
1. Напишите программу, которая выводит на экран сообщение I love C++.
1: #include <iostream.h>
2:
3: int main()
4: {
5: cout << "I love C++\n";
6: return 0;
7: }
2. Напишите самую маленькую программу, которую можно скомпилировать, скомпоновать и выполнить.