Переполнение. Системы счисления

Слайд 2

Переполнение

целые типы

беззнаковые

1

1

1

1

1

1

1

1

+255

+

0

0

0

0

0

0

0

1

+1

0

0

0

0

0

0

0

0

1

Не хватило разрядов. Перенос за пределы разрядной сетки

+0/должно быть +256

переполнение

Для беззнаковых

Переполнение целые типы беззнаковые 1 1 1 1 1 1 1 1
типов переполнение определяется по факту переноса бита за пределы разрядной сетки/занятия бита за пределами разрядной сетки

unsigned char

Слайд 3

Переполнение

целые типы

числа со знаком

0

0

0

0

0

0

1

1

+3

+

0

0

0

0

0

0

1

0

+2

0

0

0

0

0

1

0

1

0

Переноса за пределы разрядной сетки нет

+5

signed char

Переполнения
НЕТ

Переноса в знаковый

Переполнение целые типы числа со знаком 0 0 0 0 0 0
разряд нет

Слайд 4

Переполнение

целые типы

числа со знаком

1

0

0

0

1

0

0

0

-120

+

1

0

0

0

0

0

0

1

-127

0

0

0

0

1

0

0

1

1

Перенос за пределы разрядной сетки

+9

signed char

Переноса в знаковый разряд

Переполнение целые типы числа со знаком 1 0 0 0 1 0
нет

переполнение

Слайд 5

Переполнение

целые типы

числа со знаком

0

1

1

1

1

0

0

0

+120

+

0

0

0

0

1

0

1

0

+10

1

0

0

0

0

0

1

0

0

Переноса за пределы разрядной сетки нет

-126

signed char

Перенос в знаковый

Переполнение целые типы числа со знаком 0 1 1 1 1 0
разряд

переполнение

Слайд 6

Переполнение

целые типы

числа со знаком

1

1

1

1

1

1

1

1

-1

+

1

1

1

1

1

1

1

1

-1

1

1

1

1

1

1

1

0

1

Перенос за пределы разрядной сетки

-2

signed char

Переполнения
НЕТ

Перенос в знаковый разряд

Переполнение целые типы числа со знаком 1 1 1 1 1 1

Слайд 7

Переполнение

Знаковые и беззнаковые типы

1

1

1

1

1

1

1

1

-1

signed char

Команды mov, add, sub не различают знаковые и

Переполнение Знаковые и беззнаковые типы 1 1 1 1 1 1 1
беззнаковые типы

mov al, -1

Полностью эквивалентные команды

mov al, 255

1

1

1

1

1

1

1

1

255

unsigned char