Архитектура ЭВМ

Двоичная система исчисления и машинная арифметика

Разбить на страницы
Показывать лекцию целиком

Двоичная и другие системы исчисления; машинное слово и машинная арифметика; единицы измерения цифровых данных: килобайты, мегабайты, гигабайты, терабайты.

Двоичная и другие системы исчисления

Одним из положений архитектуры фон Неймана является использование двоичной системы исчисления. То есть числа и вся информация в ЭВМ представляются c помощью нулей и единиц. Все операции над данными, в частности, арифметические - сложение, вычитание, умножение, деление и пр. - также выполняются в двоичном исчислении. Решающим фактором при выборе двоичной системы оказалось то, что электронная промышленность освоила эффективное массовое производство двоичных цифровых схем.

Двоичное представление числа представляет собой последовательность, состоящая из единиц и нулей, то есть двоичных цифр.

Каждая двоичная цифра хранится в одном бите. Таким образом, бит является простейшей информационной единицей в современных ЭВМ.

Рассмотрим, как представляются числа в различных системах исчисления. Сначала разложим число 1929 по десятичному основанию:

1929_{10}=1*10^3+9*10^2+2*10^1+9*10^0

Теперь разложим это число по двоичному основанию:

1929_{10}=1*2^{10}+1*2^9+1*2^8+1*2^7+0*2^6+\\0*2^5+0*2^4+1*2^3+0*2^2+0*2^1+1*2^0=11110001001_2

В ряде случаев используется шестнадцатеричное представление чисел, то есть разложение по основанию 16. Шестнадцатеричная система исчисления оказывается востребованной, например, при визуализации двоичных данных (в частности, бинарного кода программ) для восприятия человеком. Хотя, конечно, код программы - не самое понятное, что можно себе вообразить, его шестнадцатеричное представление более читабельно, чем двоичное. В шестнадцатеричной системе исчисления используются десятичные цифры от 0 до 9 и несколько букв для обозначения чисел диапазоне от 10 до 15: A, B, C, D, E, F. Так, число 1929 в шестнадцатеричном представлении выглядит так:

1929_{10}=7*16^2+8*16^1+9*16^0=789_{16}

В общем случае представление натурального числа D в k-ичной системе исчисления выглядит так:

D_{10}=\sum_{i=0}^{p-1}k^i*d_i=d_0, \dots, d_{{p-1}_k}

где p- это количество разрядов (цифр) числа, а d_0, \dots, d_{p-1} - его k-ичные цифры, \fokall I d_i \in \{0, \dots, k-1\}. Такое число изображается с помощью десятичных цифр, а также, возможно, с применением дополнительных цифр, если основание системы исчисления больше, чем 10.

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

Нетрудно составить алгоритм, который раскладывает произвольное натуральное число в k-ичном исчислении, а также доказать единственность такого представления.

Машинное слово

Двоичное представление числа 1929 состоит из 11 цифр, следовательно, для его хранения требуется 11 бит. Можно сказать, что бит является атомарной ячейкой в памяти ЭВМ. Но адресовать каждый бит не целесообразно: ЭВМ работает со строками, числами различного вида, а также массивами, меняя сразу по многу бит. Поэтому целесообразно адресовать не биты, а группы битов. В современных компьютерах атомарным множеством бит является байт - набор из 8 бит. Многие команды процессора умеют работать с байтами. Соответственно, данные выравниваются до границы байта. Так, число 1929 в двоичном виде занимает 2 байта и выглядит так: 0000011110001001. Пять лишних бит заполняется нулями.

В современных ЭВМ единицей адресации является не байты, поскольку последние позволяют оперировать слишком маленькими числами, а машинные слова.

Машинное слово - это атомарное количество информации, с которым может оперировать данная ЭВМ. Каждая ЭВМ имеет фиксированный размер машинного слова, например, в современных Intel-архитектурах размер машинного слова составляет 32 или 64 бита то есть четыре или восемь байт соответственно.

Размер машинного слова задаёт следующие важные характеристики ЭВМ:

  • количество бит, которые процессор может обработать за один такт, что в числе прочих причин также определяет и размер регистров процессора,
  • количество бит в шине данных, а следовательно, и
  • количество бит, которое процессор может за одну операцию прочитать из оперативной памяти,
  • максимальный объём оперативной памяти, которая может быть непосредственно адресуема процессором.
  • У первого процессора Intel 4004 размер машинного слова составлял 4 бита. У ЭВМ следующих поколений размер машинного слова составлял 6, 18, 20, 36 или 48 бит. У большинства современных компьютеров (Intel x86 и др.), которые мы упоминаем в данном курсе, размер машинного слова, как мы уже упоминали выше, составляет 32 или 64 бита. Со временем размер машинного слова неуклонно увеличивается, что закономерно, так как это позволяет процессору за одну элементарную команду обрабатывать больший объём данных. В то же время увеличение машинного слова требует более развитых технологий аппаратной реализации.

    Машинная арифметика

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

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

    Предположим, что размер машинного слова равняется восьми. Тогда мы имеем следующее представление восьмибитовых двоичных чисел:

    1_{10}=0000 0001-2\\10_{10}=1*2^3+0*2^2+1*2^1+0*2^0=0000 1010_2\\21_{10}=1*2^4+0*2^3+1*2^2+0*2^1+1*2^0=0001 0101_2

    Следует отметить, что оставшиеся незадействованными старшие разряды заполняются нулями и получается, что любое целое число имеет размер восемь бит. Следовательно, мы может всегда использовать один байт для хранения целых чисел. Но очевидно, что таким образом мы можем оперировать целыми числами, которые не превышают самого большого числа, которое можно представить в восьми битах. Вот это число:

    1111 1111_2=1*2^8+1*2^7+1*2^6+1*2^5+1*2^4+1*2^3+1*2^2+1*2^1+1*2^0=511_{10}

    Однако мы пока говорили о неотрицательных целых числах. Для представления отрицательных целых резервируется старший бит - он делается знаковым: если этот бит равен 0, то перед нами неотрицательное число, а если он равен 1, то перед нами отрицательное целое число. Ниже представлены восьмибитовые отрицательные числа.

    -1_{10}=1000 0001_2\\-10_{10}=1000 1010_2\\-21_{10}=1001 0101_2

    Понятно, что занимая старший разряд для обозначения знака числа, мы уменьшаем значение максимально допустимого 8-битового целого числа - теперь оно составляет:

    0111 1111_2=1*2^7+1*2^6+1*2^5+1*2^4+1*2^3+1*2^2+1*2^1+1*2^0=255_{10}

    Соответственно, минимально допустимое восьмибитовое целое число будет равно -255. Отметим, что представленный способ представления целых числе называется прямым представлением. Его недостатком является необходимость обрабатывать знаковый разряд специальным образом, отличным от того, как обрабатываются остальные разряды восьмибитового целого числа. Для того, чтобы решить эту проблему, введём понятие дополнительного представления целого числа.

    Дополнительное представление неотрицательного числа (то есть числа, старший разряд которого равен 0) тождественно прямому представлению. Если же мы имеем двоичное отрицательное число, то сначала мы инвертируем все двоичные разряды этого числа (то есть вместо 1 записываем 0, вместо 0 записываем 1). Знаковый разряд мы оставляем неизменным. После этого мы прибавляем к модулю данного числа единицу. Если мы получаем переполнение в предпоследнем старшем разряде, то единицу переносы мы отбрасываем.

    -1_{10}=1000 0001_{2пр}=1111 1111_{2 доп}\\-10_{10}=1000 1010_{2пр}=1111 0110_{2 доп}\\-21_{10}=1001 0101_{2пр}=1110 1011_{2 доп}

    Теперь мы получаем следующее преимущество при выполнении операции вычитания по сравнению с использованием прямого представления: A_1-A_2=A_1+(-A_2). То есть мы заменяем операцию вычитания сложением с отрицательным вычитаемым (из школьного курса математики мы можем помнить, что первый аргумент операции вычитания называется уменьшаемое, а второй - вычитаемым). Ниже представлен пример.

    5_{10}-10_{10}=0000 101_{2пр}-000 1010_{2пр}=0000 0101_{2доп}+1111 0110_{2 доп}=1111 1011_{2доп}=1000 0101_{2пр}=-5_{10}

    Единицы измерения цифровых данных

    2^{10}=1024 бит принято называть килобитом (Kbit), поскольку 1024 очень близко к 1000 и тут срабатывает аналогия с другими единицами измерения - с километром, в котором 1000 метров, килограммом, в котором 1000 грамм и т.д. Килобиты, точнее, килобиты в секунду (Kbit/s), используются при указании скорости передачи информации, например, для факсимильных аппаратов и модемов Для обозначения числа 2^{10}=1024 в 1998 году Международной электротехнической комиссией была стандартизована бинарная приставка "киби". Аналогично, числу 2^{20} соответствует "меби-", а не "мега-", 2^{30} - "гиби-", а не "гига-" и т.д. Но десятичные приставки применительно к соответствующим степеням 2 успели "прижиться" раньше появления двоичных, поэтому именно они повсеместно используются до сих пор. .

    2^{10}=1024 байт принято называть килобайтом (Kb). Не так давно в килобайтах измеряли различные виды памяти ЭВМ: оперативную память, постоянное запоминающее устройство, видеопамять и т.д. Сейчас для этих целей применяются более крупные единицы (см. ниже).

    2^{20}=1 048 576 \cong 10^6 байт равно примерно одному миллиону байт и составляет один мегабайт (Mb).

    2^{30}=1 073 741 824 \cong 10^9 байт равно примерно одному миллиарду байт и составляет один гигабайт (Gb). Несколько гигабайт составляют объём оперативной памяти современного типового персонального компьютера, несколько десятков гигабайт - объем современного флэш-накопителя (флэшки). Такие объёмы появились в обиходе в связи с активным использованием видеоданных и появлением высокоскоростного Интернета. Приведём следующий интересный факт о гигабайтах и флэш-накопителях. Файловая система FAT-32, используемая сегодня на многих небольших флэш-накопителях, не поддерживает работу с файлами размером более 4 гигабайт. Соответственно, возникают проблемы при копировании файлов с видео в высоком качестве на такие флэш-накопители (часто размер таких файлов превышает 4 гигабайта). При необходимости работы с крупными файлами следует использовать другие файловые системы (например, NTFS или exFAT).

    2^{40}=1 099 511 627 776 \cong 10^{12} байт равно одному триллиону байт и составляет один терабайт (Tb). Типичный объём жесткого диска современного настольного компьютера составляет 0,5-2 терабайта.

    2^{50}=1 125 899 906 842 624 \cong 10^{15} байт - один петабайт (Pb). Нетрудно посчитать, что это составляет 1024 терабайт. Данными, измеряемыми в этих единицах, оперируют уже не отдельные люди, а крупные организации и датацентры. Петабайт - действительно крупная единица: для примера, один петабайт составляет непрерывная видеозапись хорошего качества длительностью около полутора месяцев. Но в отдельных случаях и такие объёмы оказываются слишком малы. Так, датчики Большого Адронного Коллайдера во время экспериментов могут генерировать до петабайта данных ежесекундно. На жёстких дисках подобное количество данных хранить уже слишком дорого, поэтому для этого часто используются менее удобные в обращении, но гораздо более дешёвые и ёмкие магнитные ленты.

    Вопросы

  • Почему двоичная система исчисления является базовой для представления данных в ЭВМ?
  • Чем число отличается от цифры?
  • Составьте алгоритм перевода десятичной записи числа в двоичную.
  • Обобщите этот алгоритм до произвольной k-ичной системы исчисления.
  • Докажите единственность k-ичного представления любого натурального числа.
  • Дайте определения бита.
  • Дайте определение байта.
  • Дайте определение машинного слова. Приведите примеры длины машинного слова для разных процессоров.
  • Какие характеристики ЭВМ определяет машинное слово?
  • Опишите прямое машинное представление целого числа.
  • Каков недостаток прямого представления целого числа?
  • Каким будет максимально возможное значение шестнадцатибитового целого числа в случае, если отрицательные числа нас не интересуют?
  • Какими будут максимально и минимально возможные целые шестнадцатибитовые числа?
  • Что такое знаковый разряд?
  • Опишите алгоритм построение дополнительного кода для целого числа.
  • Приведите примеры вычитания двух двоичных чисел на основе дополнительного кода.
  • Каким множителям при обозначении количества данных соответствуют приставки кило-, мега-, гига- и тера-?
  • Литература

  • Харрис Д.М., Харрис С.Л. Цифровая схемотехника и архитектура компьютера. [пер. с англ.] Imagination Technologies. М.: ДМК Пресс, 2018. 792 с.
  • Страницы:

    Двоичная и другие системы исчисления; машинное слово и машинная арифметика; единицы измерения цифровых данных: килобайты, мегабайты, гигабайты, терабайты.

    Двоичная и другие системы исчисления

    Одним из положений архитектуры фон Неймана является использование двоичной системы исчисления. То есть числа и вся информация в ЭВМ представляются c помощью нулей и единиц. Все операции над данными, в частности, арифметические - сложение, вычитание, умножение, деление и пр. - также выполняются в двоичном исчислении. Решающим фактором при выборе двоичной системы оказалось то, что электронная промышленность освоила эффективное массовое производство двоичных цифровых схем.

    Двоичное представление числа представляет собой последовательность, состоящая из единиц и нулей, то есть двоичных цифр.

    Каждая двоичная цифра хранится в одном бите. Таким образом, бит является простейшей информационной единицей в современных ЭВМ.

    Рассмотрим, как представляются числа в различных системах исчисления. Сначала разложим число 1929 по десятичному основанию:

    1929_{10}=1*10^3+9*10^2+2*10^1+9*10^0

    Теперь разложим это число по двоичному основанию:

    1929_{10}=1*2^{10}+1*2^9+1*2^8+1*2^7+0*2^6+\\0*2^5+0*2^4+1*2^3+0*2^2+0*2^1+1*2^0=11110001001_2

    В ряде случаев используется шестнадцатеричное представление чисел, то есть разложение по основанию 16. Шестнадцатеричная система исчисления оказывается востребованной, например, при визуализации двоичных данных (в частности, бинарного кода программ) для восприятия человеком. Хотя, конечно, код программы - не самое понятное, что можно себе вообразить, его шестнадцатеричное представление более читабельно, чем двоичное. В шестнадцатеричной системе исчисления используются десятичные цифры от 0 до 9 и несколько букв для обозначения чисел диапазоне от 10 до 15: A, B, C, D, E, F. Так, число 1929 в шестнадцатеричном представлении выглядит так:

    1929_{10}=7*16^2+8*16^1+9*16^0=789_{16}

    В общем случае представление натурального числа D в k-ичной системе исчисления выглядит так:

    D_{10}=\sum_{i=0}^{p-1}k^i*d_i=d_0, \dots, d_{{p-1}_k}

    где p- это количество разрядов (цифр) числа, а d_0, \dots, d_{p-1} - его k-ичные цифры, \fokall I d_i \in \{0, \dots, k-1\}. Такое число изображается с помощью десятичных цифр, а также, возможно, с применением дополнительных цифр, если основание системы исчисления больше, чем 10.

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

    Нетрудно составить алгоритм, который раскладывает произвольное натуральное число в k-ичном исчислении, а также доказать единственность такого представления.

    Машинное слово

    Двоичное представление числа 1929 состоит из 11 цифр, следовательно, для его хранения требуется 11 бит. Можно сказать, что бит является атомарной ячейкой в памяти ЭВМ. Но адресовать каждый бит не целесообразно: ЭВМ работает со строками, числами различного вида, а также массивами, меняя сразу по многу бит. Поэтому целесообразно адресовать не биты, а группы битов. В современных компьютерах атомарным множеством бит является байт - набор из 8 бит. Многие команды процессора умеют работать с байтами. Соответственно, данные выравниваются до границы байта. Так, число 1929 в двоичном виде занимает 2 байта и выглядит так: 0000011110001001. Пять лишних бит заполняется нулями.

    В современных ЭВМ единицей адресации является не байты, поскольку последние позволяют оперировать слишком маленькими числами, а машинные слова.

    Машинное слово - это атомарное количество информации, с которым может оперировать данная ЭВМ. Каждая ЭВМ имеет фиксированный размер машинного слова, например, в современных Intel-архитектурах размер машинного слова составляет 32 или 64 бита то есть четыре или восемь байт соответственно.

    Размер машинного слова задаёт следующие важные характеристики ЭВМ:

  • количество бит, которые процессор может обработать за один такт, что в числе прочих причин также определяет и размер регистров процессора,
  • количество бит в шине данных, а следовательно, и
  • количество бит, которое процессор может за одну операцию прочитать из оперативной памяти,
  • максимальный объём оперативной памяти, которая может быть непосредственно адресуема процессором.
  • У первого процессора Intel 4004 размер машинного слова составлял 4 бита. У ЭВМ следующих поколений размер машинного слова составлял 6, 18, 20, 36 или 48 бит. У большинства современных компьютеров (Intel x86 и др.), которые мы упоминаем в данном курсе, размер машинного слова, как мы уже упоминали выше, составляет 32 или 64 бита. Со временем размер машинного слова неуклонно увеличивается, что закономерно, так как это позволяет процессору за одну элементарную команду обрабатывать больший объём данных. В то же время увеличение машинного слова требует более развитых технологий аппаратной реализации.

    Машинная арифметика

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

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

    Предположим, что размер машинного слова равняется восьми. Тогда мы имеем следующее представление восьмибитовых двоичных чисел:

    1_{10}=0000 0001-2\\10_{10}=1*2^3+0*2^2+1*2^1+0*2^0=0000 1010_2\\21_{10}=1*2^4+0*2^3+1*2^2+0*2^1+1*2^0=0001 0101_2

    Следует отметить, что оставшиеся незадействованными старшие разряды заполняются нулями и получается, что любое целое число имеет размер восемь бит. Следовательно, мы может всегда использовать один байт для хранения целых чисел. Но очевидно, что таким образом мы можем оперировать целыми числами, которые не превышают самого большого числа, которое можно представить в восьми битах. Вот это число:

    1111 1111_2=1*2^8+1*2^7+1*2^6+1*2^5+1*2^4+1*2^3+1*2^2+1*2^1+1*2^0=511_{10}

    Однако мы пока говорили о неотрицательных целых числах. Для представления отрицательных целых резервируется старший бит - он делается знаковым: если этот бит равен 0, то перед нами неотрицательное число, а если он равен 1, то перед нами отрицательное целое число. Ниже представлены восьмибитовые отрицательные числа.

    -1_{10}=1000 0001_2\\-10_{10}=1000 1010_2\\-21_{10}=1001 0101_2

    Понятно, что занимая старший разряд для обозначения знака числа, мы уменьшаем значение максимально допустимого 8-битового целого числа - теперь оно составляет:

    0111 1111_2=1*2^7+1*2^6+1*2^5+1*2^4+1*2^3+1*2^2+1*2^1+1*2^0=255_{10}

    Соответственно, минимально допустимое восьмибитовое целое число будет равно -255. Отметим, что представленный способ представления целых числе называется прямым представлением. Его недостатком является необходимость обрабатывать знаковый разряд специальным образом, отличным от того, как обрабатываются остальные разряды восьмибитового целого числа. Для того, чтобы решить эту проблему, введём понятие дополнительного представления целого числа.

    Дополнительное представление неотрицательного числа (то есть числа, старший разряд которого равен 0) тождественно прямому представлению. Если же мы имеем двоичное отрицательное число, то сначала мы инвертируем все двоичные разряды этого числа (то есть вместо 1 записываем 0, вместо 0 записываем 1). Знаковый разряд мы оставляем неизменным. После этого мы прибавляем к модулю данного числа единицу. Если мы получаем переполнение в предпоследнем старшем разряде, то единицу переносы мы отбрасываем.

    -1_{10}=1000 0001_{2пр}=1111 1111_{2 доп}\\-10_{10}=1000 1010_{2пр}=1111 0110_{2 доп}\\-21_{10}=1001 0101_{2пр}=1110 1011_{2 доп}

    Теперь мы получаем следующее преимущество при выполнении операции вычитания по сравнению с использованием прямого представления: A_1-A_2=A_1+(-A_2). То есть мы заменяем операцию вычитания сложением с отрицательным вычитаемым (из школьного курса математики мы можем помнить, что первый аргумент операции вычитания называется уменьшаемое, а второй - вычитаемым). Ниже представлен пример.

    5_{10}-10_{10}=0000 101_{2пр}-000 1010_{2пр}=0000 0101_{2доп}+1111 0110_{2 доп}=1111 1011_{2доп}=1000 0101_{2пр}=-5_{10}

    Единицы измерения цифровых данных

    2^{10}=1024 бит принято называть килобитом (Kbit), поскольку 1024 очень близко к 1000 и тут срабатывает аналогия с другими единицами измерения - с километром, в котором 1000 метров, килограммом, в котором 1000 грамм и т.д. Килобиты, точнее, килобиты в секунду (Kbit/s), используются при указании скорости передачи информации, например, для факсимильных аппаратов и модемов Для обозначения числа 2^{10}=1024 в 1998 году Международной электротехнической комиссией была стандартизована бинарная приставка "киби". Аналогично, числу 2^{20} соответствует "меби-", а не "мега-", 2^{30} - "гиби-", а не "гига-" и т.д. Но десятичные приставки применительно к соответствующим степеням 2 успели "прижиться" раньше появления двоичных, поэтому именно они повсеместно используются до сих пор. .

    2^{10}=1024 байт принято называть килобайтом (Kb). Не так давно в килобайтах измеряли различные виды памяти ЭВМ: оперативную память, постоянное запоминающее устройство, видеопамять и т.д. Сейчас для этих целей применяются более крупные единицы (см. ниже).

    2^{20}=1 048 576 \cong 10^6 байт равно примерно одному миллиону байт и составляет один мегабайт (Mb).

    2^{30}=1 073 741 824 \cong 10^9 байт равно примерно одному миллиарду байт и составляет один гигабайт (Gb). Несколько гигабайт составляют объём оперативной памяти современного типового персонального компьютера, несколько десятков гигабайт - объем современного флэш-накопителя (флэшки). Такие объёмы появились в обиходе в связи с активным использованием видеоданных и появлением высокоскоростного Интернета. Приведём следующий интересный факт о гигабайтах и флэш-накопителях. Файловая система FAT-32, используемая сегодня на многих небольших флэш-накопителях, не поддерживает работу с файлами размером более 4 гигабайт. Соответственно, возникают проблемы при копировании файлов с видео в высоком качестве на такие флэш-накопители (часто размер таких файлов превышает 4 гигабайта). При необходимости работы с крупными файлами следует использовать другие файловые системы (например, NTFS или exFAT).

    2^{40}=1 099 511 627 776 \cong 10^{12} байт равно одному триллиону байт и составляет один терабайт (Tb). Типичный объём жесткого диска современного настольного компьютера составляет 0,5-2 терабайта.

    2^{50}=1 125 899 906 842 624 \cong 10^{15} байт - один петабайт (Pb). Нетрудно посчитать, что это составляет 1024 терабайт. Данными, измеряемыми в этих единицах, оперируют уже не отдельные люди, а крупные организации и датацентры. Петабайт - действительно крупная единица: для примера, один петабайт составляет непрерывная видеозапись хорошего качества длительностью около полутора месяцев. Но в отдельных случаях и такие объёмы оказываются слишком малы. Так, датчики Большого Адронного Коллайдера во время экспериментов могут генерировать до петабайта данных ежесекундно. На жёстких дисках подобное количество данных хранить уже слишком дорого, поэтому для этого часто используются менее удобные в обращении, но гораздо более дешёвые и ёмкие магнитные ленты.

    Вопросы

  • Почему двоичная система исчисления является базовой для представления данных в ЭВМ?
  • Чем число отличается от цифры?
  • Составьте алгоритм перевода десятичной записи числа в двоичную.
  • Обобщите этот алгоритм до произвольной k-ичной системы исчисления.
  • Докажите единственность k-ичного представления любого натурального числа.
  • Дайте определения бита.
  • Дайте определение байта.
  • Дайте определение машинного слова. Приведите примеры длины машинного слова для разных процессоров.
  • Какие характеристики ЭВМ определяет машинное слово?
  • Опишите прямое машинное представление целого числа.
  • Каков недостаток прямого представления целого числа?
  • Каким будет максимально возможное значение шестнадцатибитового целого числа в случае, если отрицательные числа нас не интересуют?
  • Какими будут максимально и минимально возможные целые шестнадцатибитовые числа?
  • Что такое знаковый разряд?
  • Опишите алгоритм построение дополнительного кода для целого числа.
  • Приведите примеры вычитания двух двоичных чисел на основе дополнительного кода.
  • Каким множителям при обозначении количества данных соответствуют приставки кило-, мега-, гига- и тера-?
  • Литература

  • Харрис Д.М., Харрис С.Л. Цифровая схемотехника и архитектура компьютера. [пер. с англ.] Imagination Technologies. М.: ДМК Пресс, 2018. 792 с.
  • Вернуться к учебному плану