понедельник, 15 сентября 2014 г.

Конспект параграфа 2.9

2.9.1. Целые числа в компьютере

Вся информация, обрабатываемая современными компьютерами, хранится в них в двоичном виде.Каждая ячейка памяти компьютера состоит из однородных элементов, обладающих устойчивыми состояниями: ноль и единица. Каждый элемент ячейки называют разрядом.
Для компьютерного представления целых чисел обычно используется беззнаковое представление и представление в знаковом виде. При беззнаковом представлении все разряды ячейки отводятся под само число. При представлении со знаком самый старший (левый) разряд отводится под знак числа, остальные разряды — под число.




2.9.2. Беззнаковое представление положительных целых чисел в компьютере

Чтобы получить представление целого положительного числа в компьютере, сначала это число необходимо перевести в двоичную систему счисления. Если двоичное число состоит не более чем из k цифр, то это число можно записать в k-разрядной ячейке памяти, дополнив нулями слева до k разрядов. 
Самое большое целое положительное число, которое мы можем записать в k разрядах, состоит из единиц во всех разрядах ячейки.
Минимальное число состоит из нулей во всех разрядах и равно 0. 

Пример:
Запишем максимальные числа, которые можно вместить в 8, 16, 32 разрядах.


Количество разрядов Максимальное число
8 28 – 1 = 255
16 216 – 1 = 65535
32 232 – 1 = 4294967295


2.9.3. Знаковое представление целых чисел в компьютере

То есть при знаковом представлении чисел 0 в самом левом разряде ячейки соответствует знаку плюс, а единица – знаку минус. Модуль числа можно записывать только в оставшихся k – 1 разрядах. Такое представление чисел называется прямым кодом
Прямой код положительного числа отличается от прямого кода такого же по модуля отрицательного числа только содержанием знакового разряда. Однако для представления отрицательных чисел в компьютере используется дополнительный код.
При программировании нужно помнить о том, что:


  • количество представимых чисел в k разрядах ограничено и зависит от k;
  • диапазон знаковых чисел, представимых в k-разрядной ячейке, не симметричен относительно 0. 

Пример:

Запишем максимальные и минимальные числа, которые можно записать в 8, 16 и 32 разрядах при знаковом представлении.


Количество разрядов Минимальное число Максимальное число
8 –27 = –128 27 – 1 = 127
16 –215 = –32768 215 – 1 = 32767
32 –231 = –2147483648 231 – 1 = 2147483647

Комментариев нет:

Отправить комментарий