Внутреннее представление чисел ( практическое занятие ) Преподаватель: Доцент Кафедры ВС, к.т.н. Поляков Артем Юрьевич © Кафедра вычислительных систем ФГОБУ ВПО «СибГУТИ» ФГОБУ ВПО "СибГУТИ" Кафедра вычислительных систем ОСНОВЫ ПРОГРАММИРОВАНИЯ
Целые числа 2 © Кафедра вычислительных систем ГОУ ВПО «СибГУТИ» I. Используя спецификатор %hhx вывести и проанализировать внутреннее представление указанных целых чисел в дополнительном коде: II. Используя спецификатор %hhx вывести и проанализировать результаты следующих арифметических действий: 1.19 – – 40
Целые числа (2) 3 © Кафедра вычислительных систем ГОУ ВПО «СибГУТИ» III. Разработать программу, демонстрирующую переполнение знакового представления числа при обращении знака (y = –x) для типа char. Выполнить письменный анализ. IV. Разработать программу, демонстрирующую эффект применения операции поразрядного сдвига вправо (x >> 1) и влево (x
Вещественные числа 4 © Кафедра вычислительных систем ГОУ ВПО «СибГУТИ» V. При помощи вспомогательных программ (размещенной на сайте) определить внутреннее представление указанных ниже чисел и выполнить письменный анализ полученных результатов: VI. Определить машинный эпсилон для типа double. #include int main() { float a = e5, float b = e5, c = 1.3; float x1 = a + b; x1 = x1 + c; float x2 = b + c; x2 = x2 + a; printf("x1 = %f, x2 = %f, ", x1, x2); printf("x1 - x2 = %f\n", x1 - x2); } VII. Объяснить, почему не выполняется свойство ассоциативности в приведенной на слайде программе.
Вещественные числа (2) 5 © Кафедра вычислительных систем ГОУ ВПО «СибГУТИ» IX. Разработать программу, демонстрирующую невыполнение свойства дистрибутивности: a(b + c) = ab + ac для чисел с плавающей точкой (тип float). X. Покажите, что для восьмиразрядных чисел с плавающей точкой (p = 8) со значениями u = , v = , w = не выполняется свойство ассоциативности умножения: (u v) w u (v w )