Практическое занятие ОПЕРАЦИИ (сравнение) Преподаватель: Доцент Кафедры ВС, к.т.н. Поляков Артем Юрьевич © Кафедра вычислительных систем ФГОБУ ВПО «СибГУТИ»

Презентация:



Advertisements
Похожие презентации
Системы счисления и внутреннее представление целых ( практическое занятие ) Преподаватель: Доцент Кафедры ВС, к.т.н. Поляков Артем Юрьевич © Кафедра вычислительных.
Advertisements

Преподаватель: Доцент Кафедры ВС, к.т.н. Поляков Артем Юрьевич © Кафедра вычислительных систем ФГОБУ ВПО «СибГУТИ» ФГОБУ ВПО "СибГУТИ" Кафедра вычислительных.
Преподаватель: Доцент Кафедры ВС, к.т.н. Поляков Артем Юрьевич © Кафедра вычислительных систем ФГОБУ ВПО «СибГУТИ» ФГОБУ ВПО "СибГУТИ" Кафедра вычислительных.
Практическое занятие Ввод-вывод информации Преподаватель: Доцент Кафедры ВС, к.т.н. Поляков Артем Юрьевич © Кафедра вычислительных систем ФГОБУ ВПО «СибГУТИ»
Внутреннее представление чисел ( практическое занятие ) Преподаватель: Доцент Кафедры ВС, к.т.н. Поляков Артем Юрьевич © Кафедра вычислительных систем.
«Двоичная арифметика, алгоритм сложения». Учебные вопросы: 1. Правила недесятичной арифметики. 2. Способы представления чисел в разрядной сетке ЭВМ.
Представление информации в вычислительной технике Преподаватель: Доцент Кафедры ВС, к.т.н. Поляков Артем Юрьевич © Кафедра вычислительных систем ФГОБУ.
Практическое занятие Приближенные вычисления Преподаватель: Доцент Кафедры ВС, к.т.н. Поляков Артем Юрьевич © Кафедра вычислительных систем ФГОБУ ВПО «СибГУТИ»
История вычислительной техники ( практическое занятие ) Преподаватель: Доцент Кафедры ВС, к.т.н. Поляков Артем Юрьевич © Кафедра вычислительных систем.
Представление чисел в компьютере 1.Представление целых положительных чисел. 2.Представление целых отрицательных чисел. 3.Особенности реализации арифметических.
Вводная лекция Преподаватель: Доцент Кафедры ВС, к.т.н. Поляков Артем Юрьевич © Кафедра вычислительных систем ФГОБУ ВПО «СибГУТИ» ФГОБУ ВПО "СибГУТИ" Кафедра.
Представление информации в вычислительной технике Преподаватель: Доцент Кафедры ВС, к.т.н. Поляков Артем Юрьевич © Кафедра вычислительных систем ФГОБУ.
Представление чисел в памяти компьютера.
ФГОБУ ВПО "СибГУТИ" Кафедра вычислительных систем Асимптотический анализ Преподаватель: Доцент Кафедры ВС, к.т.н. Поляков Артем Юрьевич © Кафедра вычислительных.
Практическое занятие ОПЕРАЦИИ (арифметические, присваивание) Преподаватель: Доцент Кафедры ВС, к.т.н. Поляков Артем Юрьевич © Кафедра вычислительных систем.
ФГОБУ ВПО "СибГУТИ" Кафедра вычислительных систем Алгоритмы поиска Преподаватель: Доцент Кафедры ВС, к.т.н. Поляков Артем Юрьевич © Кафедра вычислительных.
Практическое занятие Ввод-вывод информации Преподаватель: Доцент Кафедры ВС, к.т.н. Поляков Артем Юрьевич © Кафедра вычислительных систем ФГОБУ ВПО «СибГУТИ»
0 + 0= = = = 10 Арифметические операции во всех позиционных системах счисления выполняются по одним и тем же хорошо известным вам правилам.
Арифметические операции в позиционных системах счисления.
Практическое занятие Управление потоком команд Преподаватель: Доцент Кафедры ВС, к.т.н. Поляков Артем Юрьевич © Кафедра вычислительных систем ФГОБУ ВПО.
Транксрипт:

Практическое занятие ОПЕРАЦИИ (сравнение) Преподаватель: Доцент Кафедры ВС, к.т.н. Поляков Артем Юрьевич © Кафедра вычислительных систем ФГОБУ ВПО «СибГУТИ» ФГОБУ ВПО "СибГУТИ" Кафедра вычислительных систем Дисциплины "ЯЗЫКИ ПРОГРАММИРОВАНИЯ" "ПРОГРАММИРОВАНИЕ"

Логический тип данного © Кафедра вычислительных систем ФГОБУ ВПО «СибГУТИ» 2 Логический *, булев (англ. Boolean или logical data type) тип данных – базовый тип данных в информатике, допускающий два возможных значения, иногда называемых правдой (true) и ложью (false). Присутствует в подавляющем большинстве языков программирования как самостоятельная сущность или реализуется через целочисленный тип. В подавляющем большинстве языков за истину полагается единица, за ложь ноль. Pascal Boolean Pascal Boolean C++ bool C++ bool Ada Boolean Ada Boolean C99 bool C99 bool C89 int/short/char C89 int/short/char ЛОЖЬ ~ 0 ИСТИНА ~ не 0 *

Операции сравнения © Кафедра вычислительных систем ФГОБУ ВПО «СибГУТИ» 3 Класс Опер.ОписаниеПример Бинарная < Меньше a < b > Больше a > b >= Больше или равно a >= b

Задача 3.1. Сравнение двух чисел. © Кафедра вычислительных систем ФГОБУ ВПО «СибГУТИ» 4 Входные данные: целые числа x и y. Выходные данные: таблица сравнений x и y в следующем виде: $./task1 Input x & y: xyx>yx =yx

Задача 3.2. Модуль числа. © Кафедра вычислительных систем ФГОБУ ВПО «СибГУТИ» 5 Входные данные: вещественное число x. Выходные данные: модуль числа x. Рекомендации: Для вычисления модуля можно использовать соотношение: ((x >= 0) – (x < 0)) * x

Дополнительный код (десятичная система счисления) © Кафедра вычислительных систем ФГОБУ ВПО «СибГУТИ» 6 Для применения дополнительного кода должно выполняться следующее условие: доступно ограниченное количество D разрядов. Рассмотрим дополнительный код для 4-разрядных десятичных чисел (D=4). Дополнительный код x' для числа x строится следующим образом: Обратное преобразование выполняется по правилу: Положительные Отрицательные

© Кафедра вычислительных систем ФГОБУ ВПО «СибГУТИ» 7 Дополнительный код (арифметические действия) Особенностью дополнительного кода является то, что сложение и вычитание положительных и отрицательных чисел можно выполнять одинаково. Рассмотрим пример: x = 25, x' = 25 y = -15, y' = – 15 = 9985 x + y = 10 x' + y' = = = 10 x – y = 40 x' – y' = 25 – 9985 = – 9985 = 40 y + x = 10 y' + x' = = = 10 y – x = -40 z' = y' – x' = 9985 – 25 = 9960 |z| = – z' = 9960 = 40, z' > 5000 => z < 0

© Кафедра вычислительных систем ФГОБУ ВПО «СибГУТИ» 8 Дополнительный код (Самостоятельно) x = 3840, x' = ? y = -1056, y' = ? x + y = 2784 x' + y' = ? x – y = 4896 x' – y' = ? y + x = 2784 y' + x' = ? y – x = z' = y' – x' = ? |z| = ? знак z - ? Что будет, если y = ?

Задача 3.3. Построить дополнительный код знакового числа. © Кафедра вычислительных систем ФГОБУ ВПО «СибГУТИ» 9 Входные данные: целое знаковое число x. Выходные данные: дополнительный код числа x (4 десятичных разряда). Если число x не попадает в диапазон допустимых значений y, то число x необходимо сократить до (если это отрицательное число) или 4999 (если это положительное число). Рекомендации: Для решения задачи использовать арифметические операции и операции сравнения по аналогии с процедурой вычисления модуля. 1)сначала привести (скорректировать) число x к диапазону допустимых значений при помощи операций; 2)выполнить перевод скорректированного числа в дополнительный код.

Задача 3.4. Сформировать знаковое число по дополнительному коду. © Кафедра вычислительных систем ФГОБУ ВПО «СибГУТИ» 10 Входные данные: дополнительный код x. Выходные данные: знаковое число y, соответствующее числу y'. Рекомендации: Для решения задачи использовать арифметические операции и операции сравнения по аналогии с процедурой вычисления модуля. Сформировать выражение, позволяющее выполнить обратное преобразование дополнительного кода в знаковое число.

Задача 3.5. Реализовать операцию сложения в дополнительном коде. © Кафедра вычислительных систем ФГОБУ ВПО «СибГУТИ» 11 Входные данные: целые знаковые числа x и y. Выходные данные: 1)дополнительные коды для входных чисел x', y'. 2)сумма чисел (x' + y') в дополнительном коде. 3)знаковое представление числа (x' + y'). Рекомендации: 1)выполнить преобразование входных знаковых чисел в дополнительный код согласно алгоритму решения задачи 3.3; 2)реализовать алгоритм сложения чисел в дополнительном коде; 3)выполнить преобразование полученного результата из дополнительного кода в знаковое число согласно алгоритму решения задачи 3.4.

Задания для самостоятельного решения © Кафедра вычислительных систем ФГОБУ ВПО «СибГУТИ» 12 Входные данные: вещественные числа x и y. Выходные данные: |x – y|. Ограничения: Не допускается вычисление разности с последующим взятием модуля: нет возможности хранить отрицательное число. Рекомендации: Сформировать выражение, аналогично задаче 3.2, позволяющее получить требуемое решение. П3.1. Вычисление модуля разности двух целых чисел.

Задания для самостоятельного решения © Кафедра вычислительных систем ФГОБУ ВПО «СибГУТИ» 13 П3.2. Арифметическое округление и получение дробной части числа. Входные данные: вещественное число x. Выходные данные: 1. Целое число y, равное числу x, округленному до целых согласно правилам арифметики: 1)если дробная часть x < 0.5, то округление производится в меньшую сторону; 2)в противном случае округление производится в большую сторону. 2. Вещественное число z, равное дробной части числа x. Рекомендации: Для решения задачи использовать арифметические операции и операции сравнения по аналогии с процедурой вычисления модуля.

© Кафедра вычислительных систем ФГОБУ ВПО «СибГУТИ» 14 Входные данные: целые знаковые числа x и y. Выходные данные: 1)дополнительные коды для входных чисел x', y'. 2)разность чисел x' и y' согласно правилам арифметики чисел, представленных дополнительным кодом. 3)знаковое представление полученного результата вычитания. Рекомендации: 1)выполнить преобразование входных знаковых чисел в дополнительный код согласно алгоритму решения задачи 3.3; 2)реализовать алгоритм вычитания чисел в дополнительном коде; 3)выполнить преобразование полученного результата из дополнительного кода в знаковое число согласно алгоритму решения задачи 3.4. Задания для самостоятельного решения П3.3. Операция вычитания в дополнительном коде.

© Кафедра вычислительных систем ФГОБУ ВПО «СибГУТИ» 15 Входные данные: целые знаковые числа x и y. Выходные данные: 1)дополнительные коды для входных чисел x', y'. 2)произведение чисел x' и y' согласно правилам арифметики чисел, представленных дополнительным кодом. 3)знаковое представление полученного результата умножения. Рекомендации: 1)выполнить преобразование входных знаковых чисел в дополнительный код согласно алгоритму решения задачи 3.3; 2)реализовать алгоритм умножения, учитывая, что: xy = s|x||y|, где s – знак получаемого числа, s = 1, если знаки x и y одинаковы и s = -1 в противном случае; 3)выполнить преобразование полученного результата из дополнительного кода в знаковое число согласно алгоритму решения задачи 3.4. Задания для самостоятельного решения П3.4. Операция умножения в дополнительном коде.