АвтоАвтоматизацияАрхитектураАстрономияАудитБиологияБухгалтерияВоенное делоГенетикаГеографияГеологияГосударствоДомДругоеЖурналистика и СМИИзобретательствоИностранные языкиИнформатикаИскусствоИсторияКомпьютерыКулинарияКультураЛексикологияЛитератураЛогикаМаркетингМатематикаМашиностроениеМедицинаМенеджментМеталлы и СваркаМеханикаМузыкаНаселениеОбразованиеОхрана безопасности жизниОхрана ТрудаПедагогикаПолитикаПравоПриборостроениеПрограммированиеПроизводствоПромышленностьПсихологияРадиоРегилияСвязьСоциологияСпортСтандартизацияСтроительствоТехнологииТорговляТуризмФизикаФизиологияФилософияФинансыХимияХозяйствоЦеннообразованиеЧерчениеЭкологияЭконометрикаЭкономикаЭлектроникаЮриспунденкция

Представление в памяти

Читайте также:
  1. VI. Представление результатов исследования
  2. АКТУАЛЬНЫЕ АСПЕКТЫ ПАТОГЕНЕЗА ВОСПАЛЕНИЯ. СОВРЕМЕННОЕ ПРЕДСТАВЛЕНИЕ О ПАТОГЕНЕЗЕ СЕПСИСА И СИНДРОМА СИСТЕМНОГО ВОСПАЛИТЕЛЬНОГО ОТВЕТА
  3. Арифметическое представление пространства и времени
  4. Бухгалтерский баланс как типовое представление объекта исследования
  5. Виды памяти.
  6. Виды памяти.
  7. Визуальное представление звуков.
  8. Вопрос 1. Общее представление об информации. Виды и свойства информации. Математические основы информатики.
  9. Г – представлением.
  10. Ганнушкин, Шелдон и др.). Представление об акцентуациях личности.
  11. Гауссовское представление.
  12. Глава 1. Общее представление о народной культуре и проблемах ее исследования

Для представления чисел со знаком в ряде компьютеров был использован метод, называемый методом знака и значения. Обычно для знака отводится первый (или самый левый) бит двоичного числа затем следует запись самого числа.

Например, +10 и -15 в двоичном виде можно представить так:

Число Знаковый бит Величина
+10    
-15    

 

Отметим, что по соглашению 0 используется для представления знака плюс и 1 - для минуса. Такое представление удобно для программистов т.к. легко воспринимается, но не является экономичным.

Если требуется сложить или вычесть два числа, то для решения вопроса о том, какие действия следует при этом предпринять, надо сначала определить знак каждого числа. Например, сложение чисел +6 и -7 на самом деле подразумевает операцию вычитания, а вычитание -6 из +7 операцию сложения. Для анализа знакового бита требуется особая схема и, кроме того, при представлении числа в виде знака и величины необходимы отдельные устройства для сложения и вычитания, т.е., если положительное и отрицательные числа представлены в прямом коде, операции над кодами знаков выполняются раздельно. Поэтому представление чисел в виде знака и значения не нашло широкого применения.

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

Дополнительный код отрицательного числа формируется по следующим правилам:

1) модуль отрицательного числа записать в прямом коде, в неиспользуемые старшие биты записать нули;

2) сформировать обратный код числа, для этого нуль заменить единицей, а единицу заменить нулем;

3) к обратному коду числа прибавить единицу.

Например, для числа -33 в формате integer:

1000000000100001 прямой код

0111111111011110 обратный код

+_______________1

1111111111011111 дополнительный код

 

Для положительных чисел прямой, обратный и дополнительный коды одинаковы. Аналогично представляются целые числа в формате shortint, longint, comp.

При разработке программ на этапе выбора типа данных важно знать диапазон целых величин, которые могут храниться в n разрядах памяти. В соответствии с алгоритмом преобразования двоичных чисел в десятичные, формула суммирования для n разрядов имеет вид:

n-1

2^0 + 2^1 + 2^3 +... + 2^(n-1), или СУММА (2^i) = 2^n - 1.

i=0

 

При n-битовом хранении числа в дополнительном коде первый бит выражает знак целого числа. Поэтому положительные числа представляются в диапазоне от 0 до 1*2^0 + 1*2^1 +...+ 1*2^(n-2) или от 0 до 2^(n-1) - 1. Все другие конфигурации битов выражают отрицательные числа в диапазоне от -2^(n-1) до -1. Таким образом, можно сказать, что число N может храниться в n разрядах памяти, если его значение находится в диапазоне:

-2^(n-1) <= N <= 2^(n-1) - 1.

 

Тип Диапазон значений Машинное представление
shortint -128..127 8 бит, со знаком
integer -32768..32767 16 бит, со знаком
longint -2147483648..2147483647 32 бита, со знаком
byte 0..255 8 бит, без знака
word 0..65535 16 бит, без знака
comp -2^63+1..2^63-1 64 бита, со знаком

Таблица 2.1

Иными словами, диапазон возможных значений целых типов зависит от их внутреннего представления, которое может занимать 1, 2 или 4 байта. В таблице 2.1 приводится перечень целых типов, размер памяти для их внутреннего представления в битах, диапазон возможных значений.


1 | 2 | 3 | 4 | 5 | 6 | 7 | 8 | 9 | 10 | 11 | 12 | 13 | 14 | 15 | 16 | 17 | 18 | 19 | 20 | 21 | 22 | 23 | 24 | 25 | 26 | 27 | 28 | 29 | 30 | 31 | 32 | 33 | 34 | 35 | 36 | 37 | 38 | 39 |

Поиск по сайту:



Все материалы представленные на сайте исключительно с целью ознакомления читателями и не преследуют коммерческих целей или нарушение авторских прав. Студалл.Орг (0.003 сек.)