Лекция 2 2020

Содержание

Слайд 2

Учебные вопросы:

Представление целых беззнаковых чисел
Представление чисел с фиксированной точкой
Операции над числами

с фиксированной точкой
Представление чисел с плавающей точкой
Арифметические операции над числами с плавающей точкой
Учебные вопросы: Представление целых беззнаковых чисел Представление чисел с фиксированной

Слайд 3

Память состоит из нумерованных ячеек.
Линейная структура (адрес ячейки – одно число).
Байт

– это наименьшая ячейка памяти, имеющая собственный адрес.
На современных компьютерах 1 байт = 8 бит.

Слово = 2 байта

Двойное слово = 4 байта

Структура памяти

1. Представление целых беззнаковых чисел

Память состоит из нумерованных ячеек. Линейная структура (адрес ячейки –

Слайд 4

Целые беззнаковые числа

Беззнаковые данные – не могут быть отрицательными.
Для представления беззнаковых

чисел может использоваться 1 или несколько байт.
Для беззнаковых в 1 байт (8 бит) диапазон значений
0…255, 0…FF16 = 28 – 1.
Си: unsigned char Паскаль: byte

10011102 = 4E16 = ‘N’

416

E16

младший полубайт
младшая цифра

старший полубайт
старшая цифра

Старший
байт

Младший
байт

Целые беззнаковые числа Беззнаковые данные – не могут быть отрицательными.

Слайд 5

Примеры

78 =

115 =

221 =

255 =

Примеры 78 = 115 = 221 = 255 =

Слайд 6

Целое без знака размером 2 байта (16 бит) диапазон значений 0…65535,

0…FFFF16 = 216-1
Си: unsigned int Паскаль: word

биты

старший байт

младший байт

4D16

7A16

1001101011110102 = 4D7A16

Длинное целое без знака рамером 4 байта диапазон значений 0…FFFFFFFF16 = 232-1
Си: unsigned long int Паскаль: dword

Целое без знака размером 2 байта (16 бит) диапазон значений

Слайд 7

2. Представление чисел с фиксированной точкой

Числа с фиксированной точкой —

форма представления вещественных чисел, когда точкой отделяется целая часть от дробной. Например, 12.54
С фиксированной точкой все числа изображаются в виде последовательности цифр с постоянным для всех чисел положением точки, отделяющей целую часть числа от дробной.
Число в компьютере занимает определенное количество разрядов (бит), кратное 8:
8, 16, 32, 64.
2. Представление чисел с фиксированной точкой Числа с фиксированной точкой

Слайд 8

Пример 1.
Пусть даны числа 123.6, 0.01 и 1.5143.
Записать их в виде

числа с фиксированной точкой при условии, что под каждое число выделяется 8 разрядов – 4 под целую часть и 4 под дробную.
Ответ:
Пример 1. Пусть даны числа 123.6, 0.01 и 1.5143. Записать

Слайд 9

Такая форма представления наиболее проста для восприятия, но имеет существенный недостаток:


- программирование операций для чисел с фиксированной точкой, требует усилий по отслеживанию положения точки.
Поэтому в современных компьютерах форма представления чисел с фиксированной точкой используется как вспомогательная.
Такая форма представления наиболее проста для восприятия, но имеет существенный

Слайд 10

В восьми разрядной сетке числа с фиксированной точкой (байтовые числа) могут

быть представлены в диапазоне значений:
max
min

можно работать с отрицательными числами

уменьшился диапазон положительных чисел

127

– 128

Числа с фиксированной точкой в ЭВМ

Старший (знаковый) бит числа определяет его знак. Если он равен 0, число положительное, если 1, то отрицательное.

-2n-1 … 2n-1-1
– 128 = – 27 … 127 = 27 – 1

В восьми разрядной сетке числа с фиксированной точкой (байтовые числа)

Слайд 11

Слово со знаком занимает 2 байта (16 бит) и может быть

представлено в диапазоне значений
-215 … 215-1
- 32768 … 32767
Си: int Паскаль: integer
Двойное слово со знаком занимает 4 байта
и диапазон значений
-231 … 231-1
Си: long int Паскаль: longint
Слово со знаком занимает 2 байта (16 бит) и может

Слайд 12

3. Коды чисел и операции над ними

3. Коды чисел и операции над ними

Слайд 13

Такой способ представления числа является наиболее естественным, так как обеспечивает простой

переход от двоичной записи числа к записи его двоичного (прямого) кода:

Прямой код имеет существенные недостатки:
- использовании прямого кода имеется целых два кода для представления 0
+0 представляется как 0000 0000
-0 представляется как 1000 0000;
- сложно реализовать операцию вычитания, умножения и деления чисел.

3. Коды чисел и операции над ними
3.1 Прямой код

Такой способ представления числа является наиболее естественным, так как обеспечивает

Слайд 14

3.2 Обратный код
Обратный код для положительных чисел совпадает с прямым кодом,


Обратный код для отрицательных чисел получается инвертированием всех цифр двоичного кода абсолютной величины числа.

где - операция инвертирования двоичного кода абсолютной величины числа.

3.2 Обратный код Обратный код для положительных чисел совпадает с

Слайд 15

Пример представления числа -12310 в обратном коде:
1. Перевод числа -12310

в двоичное число:
2. Запись двоичного числа в прямом коде:
3.Перевод прямого кода двоичного числа в обратный:
Пример представления числа -12310 в обратном коде: 1. Перевод числа

Слайд 16

Для обратного кода справедливо следующее соотношение:

где
xsign – значение знакового

разряда,
xi – значение i-го разряда,
n – разрядность числа.

Например:
1010 = 1*(-23+1)+0*20+1*21+0*22 = -7+2 = -5

Для обратного кода справедливо следующее соотношение: где xsign – значение

Слайд 17

При использовании обратного кода арифметические операции для отрицательных чисел выполняются проще.


Само получение обратных кодов не требует значительных усилий.
Но, как и в случае прямого кода, 0 представляется 2 кодами:
+0 представляется как 0000 0000
-0 представляется как 1111 1111
При использовании обратного кода арифметические операции для отрицательных чисел выполняются

Слайд 18

3.3 Дополнительный код
Дополнительный код для положительных чисел совпадает с прямым кодом,


Дополнительный код для отрицательных чисел получается прибавлением к младшему разряду обратного кода числа 1.
3.3 Дополнительный код Дополнительный код для положительных чисел совпадает с

Слайд 19

Пример представления числа -11510 в дополнительном коде:
1. Перевод числа -11510

в двоичное число:
2. Запись двоичного числа в прямом коде:
3.Перевод прямого кода двоичного числа в обратный:
4.Перевод обратного кода двоичного числа в дополнительный:
Пример представления числа -11510 в дополнительном коде: 1. Перевод числа

Слайд 20

Для дополнительного кода справедливо следующее соотношение:

где
xsign – значение знакового

разряда,
xi – значение i-го разряда,
n – разрядность числа.

Например:
1011 = 1*(-23)+1*20+1*21+0*22 = -8+3 = -5

Для дополнительного кода справедливо следующее соотношение: где xsign – значение

Слайд 21

Анализ дополнительного кода.
- Получение дополнительного кода происходит несколько сложнее,

чем обратного.
- Использование дополнительного кода упрощает арифметические операции, что будет показано позже.
- В дополнительном коде 0 имеет единственное представление :
+0=0000 0000ДК
-0=1111 1111ОК+1=0000 0000ДК
- Использование дополнительного кода дает возможность расширить диапазон представления чисел (закодировать 256 чисел) по сравнению с прямым и обратным кодами (255 чисел).
Последнее утверждение доказать самостоятельно!
Анализ дополнительного кода. - Получение дополнительного кода происходит несколько сложнее,

Слайд 22

3.4 Ошибки выполнения операций над кодами

Переполнение разрядной сетки: в результате сложения

больших положительных чисел получается отрицательное (перенос в знаковый бит).

+

64

64

– 0

3.4 Ошибки выполнения операций над кодами Переполнение разрядной сетки: в

Слайд 23

Перенос: при сложении больших (по модулю) отрицательных чисел получается положительное (перенос

за границы разрядной сетки).

ДК

ДК

ПК

Перенос: при сложении больших (по модулю) отрицательных чисел получается положительное

Слайд 24

Учебные вопросы для самостоятельного изучения

Учебные вопросы для самостоятельного изучения

Слайд 25

4. Представление чисел с плавающей точкой

X = s ⋅ M ⋅

2e

s – знак (1 или -1)
M – мантисса,
e – порядок

M = 0 или 1 ≤ M < 2

15,625 =

1111,1012 =

1⋅1,1111012 ⋅23

знак

порядок

мантисса

3,375 =

Пример:

4. Представление чисел с плавающей точкой X = s ⋅

Слайд 26

Нормализованные числа в памяти

IEEE Standard for Binary Floating-Point Arithmetic (IEEE 754)


15,625 = 1⋅1,1111012 ⋅23

s = 1 e = 3 M = 1,1111012

Знаковый бит:
0, если s = 1
1, если s = – 1

Порядок со сдвигом:
p = e + E (сдвиг)

Дробная часть мантиссы:
m = M – 1

Нормализованные числа в памяти IEEE Standard for Binary Floating-Point Arithmetic

Слайд 27

Нормализованные числа в памяти

Типы данных для языков: Си
Паскаль

Нормализованные числа в памяти Типы данных для языков: Си Паскаль

Слайд 28

Вещественные числа в памяти

15,625 = 1,1111012 ⋅23
4 байта = 32 бита

p

= e+127 = 130
=100000102

m = M – 1 = 0,1111012

3,375 =

Вещественные числа в памяти 15,625 = 1,1111012 ⋅23 4 байта

Слайд 29

5. Арифметические операции над числами с плавающей точкой

сложение

Порядок выравнивается до большего
5,5

= 1,0112⋅22
3 = 1,12 ⋅21 = 0,112 ⋅22
Мантиссы складываются
1,0112 + 0,1102
10,0012
Результат нормализуется (с учетом порядка)
10,0012 ⋅22 = 1,00012 ⋅23 = 1000,12 = 8,5

5,5 + 3 = 101,12 + 112 = 8,5 = 1000,12

5. Арифметические операции над числами с плавающей точкой сложение Порядок

Слайд 30

вычитание

Порядок выравнивается до большего
10,75 = 1,010112⋅23
5,25 = 1,01012 ⋅22 =

0,101012 ⋅23
Мантиссы вычитаются
1,010112
– 0,101012
0,101102
Результат нормализуется (с учетом порядка)
0,10112 ⋅23 = 1,0112 ⋅22 = 101,12 = 5,5

10,75 – 5,25 = 1010,112 – 101,012 = 101,12 = 5,5

вычитание Порядок выравнивается до большего 10,75 = 1,010112⋅23 5,25 =

Слайд 31

умножение

Мантиссы умножаются
7 = 1,112 ⋅ 22 1,1 12
3 =

1,12 ⋅ 21 × 1,12
1 1 12
1 1 12
1 0 ,1 0 12
Порядки складываются: 2 + 1 = 3
Результат нормализуется (с учетом порядка)
10,1012 ⋅23 = 1,01012 ⋅24 = 101012 = 21

7 ⋅ 3 = 1112 ⋅ 112 = 101012 = 21

умножение Мантиссы умножаются 7 = 1,112 ⋅ 22 1,1 12

Слайд 32

деление

Мантиссы делятся
17,25 = 1,0001012 ⋅ 24
3 = 1,12

⋅ 21
1,0001012 : 1,12 = 0,101112
Порядки вычитаются: 4 – 1 = 3
Результат нормализуется (с учетом порядка)
0,101112 ⋅23 = 1,01112 ⋅22 = 101,112 = 5,75

17,25 : 3 = 10001,012 : 112 = 101,112 = 5,75

деление Мантиссы делятся 17,25 = 1,0001012 ⋅ 24 3 =
Имя файла: Лекция-2-2020.pptx
Количество просмотров: 43
Количество скачиваний: 0