Представление информации в вычислительной технике Преподаватель: Доцент Кафедры ВС, к.т.н. Поляков Артем Юрьевич © Кафедра вычислительных систем ФГОБУ.

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



Advertisements
Похожие презентации
Представление информации в вычислительной технике Преподаватель: Доцент Кафедры ВС, к.т.н. Поляков Артем Юрьевич © Кафедра вычислительных систем ФГОБУ.
Advertisements

Практическое занятие ОПЕРАЦИИ (сравнение) Преподаватель: Доцент Кафедры ВС, к.т.н. Поляков Артем Юрьевич © Кафедра вычислительных систем ФГОБУ ВПО «СибГУТИ»
ВВОДНАЯ ЛЕКЦИЯ Преподаватель: Доцент Кафедры ВС, к.т.н. Поляков Артем Юрьевич ФГОБУ ВПО "СибГУТИ" Кафедра вычислительных систем ПРОГРАММИРОВАНИЕ ЯЗЫКИ.
Практическое занятие Ввод-вывод информации Преподаватель: Доцент Кафедры ВС, к.т.н. Поляков Артем Юрьевич © Кафедра вычислительных систем ФГОБУ ВПО «СибГУТИ»
Вводная лекция Преподаватель: Доцент Кафедры ВС, к.т.н. Поляков Артем Юрьевич ФГОБУ ВПО "СибГУТИ" Кафедра вычислительных систем © Кафедра вычислительных.
форма с фиксированной точкой (применяется к целым числам) форма с плавающей точкой (применяется к вещественным числам)
Представление информации в ЭВМ Урок 1. Основы кодирования информации в ЭВМ Обработка информации в ЭВМ основана на обмене электрическими сигналами между.
Представление числовой информации в ПК Мясникова О.К.
Представление числовой информации в ПК Диденко В.В.
Устройство компьютера. Изобретение компьютера Компьютер был изобретен в середине XX века для усиления возможностей интеллектуальной работы человека. Само.
Электронная энциклопедия. Содержание Архитектура ПК Системы счисления.
Кодирование числовой информации Для представления чисел в памяти ПК используются два формата: формат с фиксированной точкой, формат с плавающей точкой.
Представление чисел в компьютере. Правило 1: данные (и программы) в памяти компьютера хранятся в двоичном виде, т. е. в виде цепочек единиц и нулей. Современный.
Рассчитайтесь по порядку в двоичной системе счисления. Вспомните алгоритм перевода десятичных чисел в двоичную систему счисления.
Внутреннее представление чисел в памяти компьютера. Темы: 1.Представление целых чисел. А)положительные числа Б)отрицательные числа 2.Представление вещественных.
Кодирование информации Представление чисел в компьютере.
Представление чисел в компьютере Терехова Н.А.. Представление чисел в формате с фиксированной запятой.
Системы счисления и внутреннее представление целых ( практическое занятие ) Преподаватель: Доцент Кафедры ВС, к.т.н. Поляков Артем Юрьевич © Кафедра вычислительных.
Арифметические основы компьютера. Системы счисления Системой счисления называется совокупность приемов наименования и записи чисел Система счисления –
ЧИСЛА В ПАМЯТИ КОМПЬЮТЕРА "Все есть число", говорили пифагорийцы, подчеркивая необычайно важную роль чисел в практической деятельности.
Транксрипт:

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

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

Принципы фон Неймана (3-4) © Кафедра вычислительных систем ФГОБУ ВПО «СибГУТИ» 3 3.Память компьютера используется не только для хранения данных, но и программ. Команды и данные кодируются в двоичной системе счисления, поэтому для их хранения может использоваться одно устройство. Цель: в определенных ситуациях над командами можно выполнять те же действия, что и над данными (изменять их!). 4.Ячейки памяти ЭВМ имеют адреса, которые последовательно пронумерованы. Цель: возможность обращения к произвольным ячейкам памяти в любой момент времени. Данный принцип открыл возможность использовать переменные в программировании.

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

© Кафедра вычислительных систем ФГОБУ ВПО «СибГУТИ» 5 Транзистор Два устойчивых состояния! Конденсатор Ферромагнетики Ячейка памяти (элементная база) Элементная база

© Кафедра вычислительных систем ФГОБУ ВПО «СибГУТИ» 6 Ячейка памяти (логическое представление) Логическое представление ячейки не зависит от физических компонентов, использованных для ее изготовления. Ячейка рассматривается как набор двоичных разрядов, которые объединяются в группы из 8 штук, образующие байт.

Программные объекты (СИ) © Кафедра вычислительных систем ФГОБУ ВПО «СибГУТИ» 7 Программа Переменная Функции Хранение данных Группы инструкций

Идентификация программных элементов (СИ) © Кафедра вычислительных систем ФГОБУ ВПО «СибГУТИ» 8 Компьютерная программа средней сложности содержит тысячи программных объектов. Для того, чтобы уникально идентифицировать их используются "идентификаторы". Идентификатор представляет собой последовательность строчных ("a – z") и прописных ("A – Z") букв латинского алфавита, а также цифр ("0 – 9") и знака подчеркивания ("_"). Идентификатор начинается либо с буквы, либо со знака нижнего подчеркивания. Идентификаторы используются для: 1)формирования имен объектов языка: переменных (ячеек памяти для хранения данных) и функций (групп инструкций программы). 2)ключевых слов языка: типы данных (int, char, float), управляющие конструкции (for, while, if).

Характеристики переменных © Кафедра вычислительных систем ФГОБУ ВПО «СибГУТИ» 9 Переменная – ячейка памяти, предназначенная для хранения данных. В языках высокого уровня переменная характеризуется: 1)именем (идентификатор), которое позволяет программисту отличать данную ячейку от множества других, используемых в программе; 2)типом данного, который определяет какую информацию можно хранить в данной ячейке (целые или вещественные числа). Тип данного определяет: формат представления информации; диапазон хранимых значений (размер ячейки памяти); набором допустимых операций.

Тип данного © Кафедра вычислительных систем ФГОБУ ВПО «СибГУТИ» 10 В современных процессорах для работы с целыми и вещественными числами используются различные регистры и наборы команд. Поэтому типизация данных присутствует уже в языках низкого уровня. Типизация данных в языках высокого уровня связана тем, что обрабатываемые данные отличаются между собой по следующим параметрам: 1)диапазон значений; 2)внутреннее представление в памяти; 3)занимаемый объем памяти; 4)набор команд процессора, предназначенный для их обработки.

Целые числа © Кафедра вычислительных систем ФГОБУ ВПО «СибГУТИ» 11 ОбозначениеРазмер, байтДиапазон значений char1[-128; 127] short2[-32768; 32767] int4[– ; ] long4 или 8[-2 63 ; ] (8 байт) ОбозначениеРазмер, байтДиапазон значений unsigned char1[0; 255] unsigned short2[0; 65535] unsigned int4[0; ] unsigned long4 или 8[0; ] (8 байт) Знаковые целые Беззнаковые целые

Внутреннее представление беззнаковых целых (1) © Кафедра вычислительных систем ФГОБУ ВПО «СибГУТИ» 12 Беззнаковые (unsigned) целые числа в памяти хранятся в виде двоичного представления исходного целого числа. Тип unsigned char: unsigned char c1 = = = unsigned char c2 = = =

Внутреннее представление беззнаковых целых (2) © Кафедра вычислительных систем ФГОБУ ВПО «СибГУТИ» 13 unsigned short s1 = = = unsigned short s2 = = = = Беззнаковые (unsigned) целые числа в памяти хранятся в виде двоичного представления исходного целого числа. Тип unsigned short:

Внутреннее представление знаковых целых (1) © Кафедра вычислительных систем ФГОБУ ВПО «СибГУТИ» Для представления знаковых целых требуется хранить знак. Один бит способен хранить только 2 значения: 0 и 1, третьего значения для обозначения знака " – " не предусмотрено. В таких ситуациях в вычислительной технике осуществляется "кодирование". Т.е. определяется набор правил, согласно которым по содержимому ячейки можно понять – отрицательное в ней значение или нет. Для кодирования знака в процессорах архитектуры Intel x86 и x86_64 используется "дополнительный код".

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

© Кафедра вычислительных систем ФГОБУ ВПО «СибГУТИ» 16 Дополнительный код (арифметические действия) Особенностью дополнительного кода является то, что сложение и вычитание положительных и отрицательных чисел можно выполнять одинаково. Рассмотрим пример: 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' > => z < 0

© Кафедра вычислительных систем ФГОБУ ВПО «СибГУТИ» 17 Дополнительный код (Самостоятельно) 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 = ?

Дополнительный код (двоичная система счисления) © Кафедра вычислительных систем ФГОБУ ВПО «СибГУТИ» 18 В десятичной системе 10 разрядов, поэтому число отрицательно, если его D-й разряд > 5. В двоичной системе разрядов всего два, поэтому число отрицательно, если его D-й разряд = 1 и положительно, если D-й разряд = 0. Получим представление десятичных чисел, рассмотренных ранее в двоичном дополнительном коде: D = 8 (один байт) x = 25 > 0 => x' = = y = -15, |y| = = , y' = – = x' + y' = = = = 10 2 z' = y' – x' = – = |z| = – = = z' => z < 0

Интерпретация значения ячеек памяти © Кафедра вычислительных систем ФГОБУ ВПО «СибГУТИ» a 2 = x 1 x 2 x 3 x 4 x 5 (a 2 = ) a 10 = x x x x x (a 10 = = 21) a 10 = ?

Выбор типа данного © Кафедра вычислительных систем ФГОБУ ВПО «СибГУТИ» 20 ТипБеззнаковыйЗнаковый char[0; 255][-128; 127] short[0; 65535][-32768; 32767] int[0; ][– ; ] 1. Возраст человека 2. Расстояние между городами (Новосибирск-Москва ~ 3000 км) 3. Температура на улице 4. Скорость автомобиля 5. Высота над уровнем моря

Выбор типа данного © Кафедра вычислительных систем ФГОБУ ВПО «СибГУТИ» 21 ТипБеззнаковыйЗнаковый char[0; 255][-128; 127] short[0; 65535][-32768; 32767] int[0; ][– ; ] 6. Государственный долг США (Табло в Нью-Йорке около Таймс-сквер)

© Кафедра вычислительных систем ФГОБУ ВПО «СибГУТИ» 22 Внутреннее представление вещественных чисел Вещественные числа помимо знака имеют десятичную запятую (десятичная точка), которая также нуждается в кодировании. В настоящее время для представления вещественных чисел используется формат с плавающей точкой. В этом случае вещественное число f представляется в виде: f = s0,m 10 e-q где s { 1, -1 } – знак, m – мантисса – беззнаковое целое число. p – беззнековое целое число, разность которого с константой q дает нужную степень 10. Например, пусть константа q = 127, тогда: f = = 10, s = 1, m = 1014, p = 129 f = (s, m, p) = (1, 1014, 129) f = - 0,0015 = (-1)0, s = -1, m = 15, p = 125 f = (s, m, p) = (-1, 15, 125)

© Кафедра вычислительных систем ФГОБУ ВПО «СибГУТИ» 23 Внутреннее представление вещественных чисел (самостоятельно) f = s0,m 10 e-q где s { 1, -1 } – знак, m – мантисса – беззнаковое целое число. p – беззнековое целое число, разность которого с константой q дает нужную степень 10. Например, пусть константа q = 127, тогда: f = 150,5 s = ?, m = ?, p = ? f = 1,1984 s = ?, m = ?, p = ? f = 0,00101 s = ?, m = ?, p = ? f = s = ?, m = ?, p = ? f = s = ?, m = ?, p = ?

© Кафедра вычислительных систем ФГОБУ ВПО «СибГУТИ» 24 Тип данного float 0 Размер, выделяемый для хранения: 4 байта (32 бита) (e, m,s) = s1.m 2 (e – q) m: 23 бит; e: 8 бит; s: 1 бит, q = – 1 = fes

Диапазон значений вещественных типов © Кафедра вычислительных систем ФГОБУ ВПО «СибГУТИ» 25 ИдентификаторРазмер, байтДиапазон значений float4 от ±3.4· до ±3.4·10 38 (~ 7 значащих цифр) double8 от ±1.7· до ±1.7· (~ 15 значащих цифр) long double12 от ±1.2· до ±1.2· (~22 значащие цифры) ОбозначениеРазмер, байтДиапазон значений unsigned long82 64 – 1 ~ 1.84·10 19 (~19 значащих цифр)

Представление текстовой информации © Кафедра вычислительных систем ФГОБУ ВПО «СибГУТИ» 26 Хранение информации возможно только в виде двоичных чисел. Текст не является числом или набором чисел! Требуется способ преобразовать текст в набор чисел (оцифровать) Текст имеет естественное разбиение на: 1.слова 2.буквы

Представление текстовой информации (2) © Кафедра вычислительных систем ФГОБУ ВПО «СибГУТИ» 27 Текст кодируется посимвольно. Каждому символу сопоставляется уникальное число. Данное отображение называется кодировкой. Пример: таблица ASCII-кодов. Симв.Код 16 Код 10 'a'6198 'b'6299 'c'63100 'd'64101 'e'65102 'f'66103 Симв.Код 16 Код 10 '1'3048 '2'3149 '3'3250 '4'3351 '5'3452 '6'3553

Представление текстовой информации (3) © Кафедра вычислительных систем ФГОБУ ВПО «СибГУТИ» A.B.C.D.E.F 0. NULSOHSTXETXEOTENQACKBELBSTABLFVTFFCRSOSI 1. DLEDC1DC2DC3DC4NAKSYNETBCANEMSUBESCFSGSRSUS 2. !"#$ %&'()*+,./ : ; ? 5.PQRSTUVWXYZ[\]^_ 6.`abcdefghijklmno 7.pqrstuvwxyz{|}~DEL Полная версия таблицы ASCII-кодов. Коды указаны в шестнадцатеричной системе счисления