Способы представления числовых данных в компьютере презентация

Содержание

Слайд 2

Задача 1. Решение А) вычислений без погрешностей Рассмотрим достоинства и недостатки каждого из способов представления данных

Задача 1. Решение

А) вычислений без погрешностей
Рассмотрим достоинства и недостатки каждого из

способов представления данных
Слайд 3

ЦЕЛЫЕ ДВОИЧНЫЕ ЧИСЛА (БЕЗ ЗНАКА) Если на число отводится n

ЦЕЛЫЕ ДВОИЧНЫЕ ЧИСЛА (БЕЗ ЗНАКА)

Если на число отводится n бит, то

диапазон представимых чисел будет [0; 2n−1] n= 8, 16, 32, 64, …

Форматы некоторых беззнаковых чисел

Слайд 4

ЦЕЛЫЕ ДВОИЧНЫЕ ЧИСЛА Например (беззнаковые числа): Должны получить: А =

ЦЕЛЫЕ ДВОИЧНЫЕ ЧИСЛА

Например (беззнаковые числа): Должны получить:
А = 25510 = 1111 11112=

FF16. А+В=1FE (510)
В = 25510 = 1111 11112= FF16.
Но после операции сложения
MOV AL,255
ADD AL,255
имеем неверный результат:
Пример переполнения разрядной сетки формата signed integer

Основная сложность работы с целыми числами – возможное переполнение разрядной сетки.

Слайд 5

Задача 1. Решение А) вычислений без погрешностей А.1. Целое без

Задача 1. Решение

А) вычислений без погрешностей
А.1. Целое без знака не подходит,

т.к.
при вычислениях могут возникнуть и отрицательные числа,
нельзя произвести вычисления с дробными числами,
ограничен диапазон представимых значений при максимальной разрядности в 8 байт (в 64-разрядных ВС) составляет 0÷264
основная ошибка (погрешность) переполнение разрядной сетки при получении результата, превышающего диапазон
Слайд 6

ЦЕЛЫЕ ДВОИЧНЫЕ ЧИСЛА СО ЗНАКОМ

ЦЕЛЫЕ ДВОИЧНЫЕ ЧИСЛА СО ЗНАКОМ

Слайд 7

ЦЕЛЫЕ ДВОИЧНЫЕ ЧИСЛА Например (знаковые числа): Должны получить: А =

ЦЕЛЫЕ ДВОИЧНЫЕ ЧИСЛА

Например (знаковые числа): Должны получить:
А = – 12810 = 1000

00002= 8016. А+В=17816 (–13610)
В = –810 = 1111 10002= F816.
Но после операции сложения
MOV AL, –128
ADD AL, –8
имеем неверный результат:
Пример переполнения разрядной сетки формата signed integer

Основная сложность работы с целыми числами – возможное переполнение разрядной сетки.

Слайд 8

Задача 1. Решение А) вычислений без погрешностей А.2. Целое со

Задача 1. Решение

А) вычислений без погрешностей
А.2. Целое со знаком не подходит,

т.к.
нельзя произвести вычисления с дробными числами,
ограничен диапазон представимых значений при максимальной разрядности в 8 байт (в 64-разрядных ВС) составляет –263÷+263
основная ошибка (погрешность) переполнение разрядной сетки при получении результата, превышающего диапазон
Слайд 9

ДРОБНЫЕ ЧИСЛА В ФОРМАТЕ С ПЛАВАЮЩЕЙ ЗАПЯТОЙ (ЧПЗ) или FLOAT

ДРОБНЫЕ ЧИСЛА В ФОРМАТЕ С ПЛАВАЮЩЕЙ ЗАПЯТОЙ (ЧПЗ) или FLOAT

Каждая

ячейка памяти с числом соответствующего типа в бинарном виде содержит (последовательно):
1 бит знака (s),
p бит, выделяемых на хранение порядка числа,
m бит для хранения мантиссы.

Число = ± Мантисса × 2 ±порядок

знак

порядок

мантисса

1 бит p бит m бит

Слайд 10

СТАНДАРТЫ ПРЕДСТАВЛЕНИЯ ЧПЗ В КОМПЬЮТЕРЕ IEEE 754-2008 http://ali.ayad.free.fr/IEEE_2008.pdf

СТАНДАРТЫ ПРЕДСТАВЛЕНИЯ ЧПЗ В КОМПЬЮТЕРЕ

IEEE 754-2008 http://ali.ayad.free.fr/IEEE_2008.pdf

Слайд 11

Диапазоны представления чисел с плавающей запятой Числа с плавающей запятой

Диапазоны представления чисел с плавающей запятой

Числа с плавающей запятой одинарной

точности могут хранить значение в диапазоне
Для чисел с половинной точностью: [–65504; –5.96∙10−8] U [5.96∙10−8; 65504].
Для чисел с двойной точностью: [–1,8∙10308; –2,2∙10–308] U [2,2∙10–308; 1,8∙10308].
Для чисел с расшир. точностью: [–1,18∙104932; – 3,37∙10-4932] U [3.37·10–4932; 1,18 ∙104932].

Слайд 12

ТОЧНОСТЬ ПРЕДСТАВЛЕНИЯ ЧИСЕЛ В КОМПЬЮТЕРЕ Для действительных чисел: вычислительная погрешность

ТОЧНОСТЬ ПРЕДСТАВЛЕНИЯ ЧИСЕЛ В КОМПЬЮТЕРЕ

Для действительных чисел:
вычислительная погрешность
необходимость перевода

дробей из десятичной системы счисления в двоичную.
⅕=0,2.
Двоичное представление:
4 разрядами после запятой - 0.00112, что соответствует десятичному числу 0.187510
8 разрядами - 0.001100112, что соответствует десятичному числу 0.1992187510
12 разрядами - 0.0011001100112, что соответствует десятичному числу 0.19995117187510
28 разрядами - 0.00110011001100110011001100112, что соответствует 0.1999999992549410
Отсюда видим, что точность представления повышается с увеличением разрядной сетки. Кроме того, в формате ЧПЗ не могут быть представлены как очень большие числа, так и очень маленькие.

Все целые числа представлены без погрешности.

Слайд 13

Задача 1. Решение А) вычислений без погрешностей А.3. Формат с

Задача 1. Решение

А) вычислений без погрешностей
А.3. Формат с плавающей запятой (точкой)

не подходит, т.к.
хотя диапазон представимых значений достаточно большой, но все дробные числа за редким исключением представляются с погрешностью и для точных расчетов не подходят
Слайд 14

ДВОИЧНО-ДЕСЯТИЧНЫЕ ДАННЫЕ Позволяют оперировать любыми типами и размерами чисел без

ДВОИЧНО-ДЕСЯТИЧНЫЕ ДАННЫЕ

Позволяют оперировать любыми типами и размерами чисел без погрешности (т.к.

это формат представления не целого числа, а лишь одного десятичного разряда).
Необходимое количество десятичных разрядов определяет пользователь при написании кода программы, т.е. он сам выбирает точность представления.

;------------------------------------------------
.data
A DB 07H, 09h, 04H ;неупакованное BCD-число 497
B DB 16H, 05H ;упакованное BCD-число 516
;------------------------------------------------

Слайд 15

ДВОИЧНО-ДЕСЯТИЧНЫЕ ДАННЫЕ Неупакованное BCD-число.

ДВОИЧНО-ДЕСЯТИЧНЫЕ ДАННЫЕ

Неупакованное BCD-число.

Слайд 16

ДВОИЧНО-ДЕСЯТИЧНЫЕ ДАННЫЕ Упакованное BCD-число.

ДВОИЧНО-ДЕСЯТИЧНЫЕ ДАННЫЕ

Упакованное BCD-число.

Слайд 17

Задача 1. Решение А) вычислений без погрешностей А.4. Формат BCD

Задача 1. Решение

А) вычислений без погрешностей
А.4. Формат BCD двоично-десятичное представление подходит


вычисление без погрешностей – ДА
возможность задания любого размера числа – ДА
возможность самостоятельно программно определить знак числа и положение запятой – ДА
из двух форматов больше подходит упакованный, т.к. он позволяет в два раза сократить занимаемую числом область памяти
Слайд 18

Задача 1. Решение А) вычислений без погрешностей Решение: Формат BCD двоично-десятичного представления

Задача 1. Решение

А) вычислений без погрешностей
Решение: Формат BCD двоично-десятичного представления

Слайд 19

Задача 1. Решение Б) операций считывания и обработки информации с

Задача 1. Решение

Б) операций считывания и обработки информации с датчиков управляемого

объекта
Решение
Сложный формат ЧПЗ, вектора, BCD не нужен
Приемлем формат целого двоичного числа без знака, т.к. информация с датчиков представляет собой набор кодов сигналов – двоичных цифр, знак не требуется, дробная часть не нужна, самый экономный размер двоичного числа – byte unsigned integer (1 байт без знака).
Слайд 20

Задача 1. Решение В) решения системы уравнений с малой погрешностью

Задача 1. Решение

В) решения системы уравнений с малой погрешностью (не больше

10-7)
Решение
Из-за возможных дробных решений можно сравнить три формата
ЧПЗ (float),
BCD,
Вектора (sse/avx),
Сложно программируемый формат BCD не нужен, т.к. оговорена возможность наличия погрешности.
Приемлем формат данных ЧПЗ (float) и векторных ЧПЗ. Среди размерности чисел следует выбрать (при условии экономии памяти) наименьший формат, дающий допустимую погрешность.
точность представления числа (количество верных десятичных знаков после запятой) :
Binary32: log10 (мантиссы) = log10 (223)=6,92 ≈ 7
Binary64: log10 (252)=15,65 ≈ 16
Binary128: log10 (2112)=33,7 ≈ 34

более высокой точности не требуется.
Слайд 21

Задача 1. Решение Г) сбор статистических данных о численности людей

Задача 1. Решение

Г) сбор статистических данных о численности людей разных возрастных

категорий в городе.
Решение
ЧПЗ (float) – не нужен, т.к. число целое,
Сложно программируемый формат BCD не нужен,
формат Вектора (sse/avx) при ограниченном наборе операций с ним не нужен,
Приемлем формат целого беззнакового числа
Среди размерности чисел следует выбрать (при условии экономии памяти) наименьший формат, позволяющий задать максимально число жителей города.
Самый большой город мира по численности населения — это Токио. В столице Японии проживает 34,5 миллиона человек.
Сравним с диапазонами:
Слайд 22

Задача 2. Задание Установите последовательность в порядке возрастания следующих дробных

Задача 2. Задание

Установите последовательность в порядке возрастания следующих дробных чисел в

формате ЧПЗ одинарной точности, расположенные по адресам (см. рис. ниже):
А1 по адресу 00402000,
А2 по адресу 00402004,
А3 по адресу 00402014.
Слайд 23

Задача 2. Задание Установите последовательность в порядке возрастания следующих дробных

Задача 2. Задание

Установите последовательность в порядке возрастания следующих дробных чисел в

формате ЧПЗ одинарной точности, расположенные по адресам (см. рис. ниже):
А1 по адресу 00402000,
А2 по адресу 00402004,
А3 по адресу 00402014.

по адресу 00402000 расположены 4 байта кода числа А1 – 00 00 00 00,
по адресу 00402004 расположены 4 байта кода числа А2 – 5F 70 09 B0,
по адресу 00402014 расположены 4 байта кода числа А3– 05 FC FD 02

Слайд 24

Побайтное хранение кодов Размер стандартных машинных элементов данных кратен степеням

Побайтное хранение кодов

Размер стандартных машинных элементов данных кратен степеням двойки:
1 байт 20

байт = 8 бит
2 байта – слово 21 байт = 16 бит
4 байта – двойное слово 22 байт = 32 бит
8 байт – учетверённое слово 23 байт = 64 бит

00

F0

0F

FF

Слайд 25

Основные размеры данных

Основные размеры данных

Слайд 26

СПОСОБЫ ХРАНЕНИЯ МНОГОБАЙТОВЫХ ЭЛЕМЕНТОВ ДАННЫХ В ПАМЯТИ КОМПЬЮТЕРА Порядок следования

СПОСОБЫ ХРАНЕНИЯ МНОГОБАЙТОВЫХ ЭЛЕМЕНТОВ ДАННЫХ В ПАМЯТИ КОМПЬЮТЕРА

Порядок следования байтов числа

в памяти


Прямой: от старшего к младшему Обратный: от младшего к старшему
IBM, Motorola, SPARC Intel

Слайд 27

архитектура «Little Endian» правильная привычная нам запись заданных чисел будет

архитектура «Little Endian»
правильная привычная нам запись заданных чисел будет следующая:
А1

= 00 00 00 00,
А2 = B0 09 70 5F,
А3 = 02 FD FC 05.

Задача 2. Решение

Слайд 28

Задача 2. Решение архитектура «Little Endian» А1 = 00 00

Задача 2. Решение

архитектура «Little Endian»
А1 = 00 00 00 00,
А2

= B0 09 70 5F,
А3 = 02 FD FC 05.
Знак числа
для А1 цифра 016 = 00002, число А1 – положительный ноль
для А2 цифра В16= 10112, число А2 – отрицательное
для А3 цифра 016 = 00002, число А3 – положительное и не равно нулю.
Следовательно, верен следующий порядок чисел по возрастанию:
A2, A1, A3
Имя файла: Способы-представления-числовых-данных-в-компьютере.pptx
Количество просмотров: 34
Количество скачиваний: 0