ВУЗ: Не указан

Категория: Не указан

Дисциплина: Не указана

Добавлен: 19.06.2021

Просмотров: 148

Скачиваний: 1

ВНИМАНИЕ! Если данный файл нарушает Ваши авторские права, то обязательно сообщите нам.

Знание весовых коэффициентов позволяет учесть приоритет частных показателей.


Характеристики систем памяти

Перечень основных характеристик, которые необходимо учитывать, рассматривая конкретный вид ЗУ, включает в себя:

место расположения;

емкость;

единицу пересылки;

метод доступа;

быстродействие;

физический тип;

физические особенности;

стоимость.

По месту расположения ЗУ разделяют на процессорные, внутренние и внешние. Наиболее скоростные виды памяти (регистры, кэш-память первого уровня) обычно размещают на общем кристалле с центральным процессором, а регистры общего назначения вообще считаются частью ЦП. Вторую группу (внутреннюю память) образуют ЗУ, расположенные на системной плате. К внутренней памяти относят основную память, а также кэш-память второго и последующих уровней (кэш-память второго уровня может также размещаться на кристалле процессора). Медленные ЗУ большой емкости (магнитные и оптические диски, магнитные ленты) называют внешней памятью, поскольку к ядру ВМ они подключаются аналогично устройствам ввода/вывода.

Емкость ЗУ характеризуют числом битов либо байтов, которое может храниться в запоминающем устройстве. На практике применяются более крупные единицы, а для их обозначения к словам «бит» или «байт» добавляют приставки: кило мега, гига, тера, пета, экза (kilo, mega, giga, tera, peta, exa). Стандартно эти приставки означают умножение основной единицы измерений на 103, 106, 109, 1012, 1015 и 1018 соответственно. В вычислительной технике, ориентированной на двоичную систему счисления, они соответствуют значениям достаточно близким к стандартным, но представляющим собой целую степень числа 2, то есть 210, 220, 230, 240, 250, 260,. Во избежание разночтений, в последнее время ведущие международные организации по стандартизации, например IEEE (Institute of Electrical and Electronics Engineers), предлагают ввести новые обозначения, добавив к основной приставке слово binary (бинарный): kilobinary, megabinary, gigabinary, terabinary, petabinary, exabinary. В результате вместо термина «килобайт» предлагается термин «киби-байт», вместо «мегабайт» — «мебибайт» и т. д. Для обозначения новых единиц предлагаются сокращения: Ki, Mi, Gi, Ti, Pi и Ei.

Важной характеристикой ЗУ является единица пересылки. Для основной памяти (ОП) единица пересылки определяется шириной шины данных, то есть количеством битов, передаваемых по линиям шины параллельно. Обычно единица пересылки равна длине слова, но не обязательно. Применительно к внешней памяти данные часто передаются единицами, превышающими размер слова, и такие единицы называются блоками.

При оценке быстродействия необходимо учитывать применяемый в данном типе ЗУ метод доступа к данным. Различают четыре основных метода доступа:

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


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

произвольный доступ. Каждая ячейка памяти имеет уникальный физический адрес. Обращение к любой ячейке занимает одно и то же время и может производиться в произвольной очередности. Примером могут служить запоминающие устройства основной памяти;

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

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

время доступа (Тд). Для памяти с произвольным доступом оно соответствует интервалу времени от момента поступления адреса до момента, когда данные заносятся в память или становятся доступными. В ЗУ с подвижным носителем информации — это время, затрачиваемое на установку головки записи/считывания (или носителя) в нужную позицию;

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

скорость передачи. Это скорость, с которой данные могут передаваться в память или из нее. Для памяти с произвольным доступом она равна 1/Тц. Для других видов памяти скорость передачи определяется соотношением:


где TN, - среднее время считывания или записи N битов; TA — среднее время доступа; R – скорость пересылки в битах в секунду.

Говоря о физическом типе запоминающего устройства, необходимо упомянуть три наиболее распространенных технологии ЗУ – это полупроводниковая память, память с магнитным носителем информации, используемая в магнитных дисках и лентах, и память с оптическим носителем – оптические диски.

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


Стоимость ЗУ принято оценивать отношением общей стоимости ЗУ к его емкости в битах, то есть стоимостью хранения одного бита информации.



3. Системы счисления, применяемые в ЭВМ



Двоичная система счисления

Набор цифр для двоичной системы счисления — {0,1}, основание степени (р) — 2. Количественный эквивалент некоторого целого n-значного двоичного числа вычисляется согласно формуле (1):

A(p) = an-1pn-1 + an-2pn-2 + …+ a1p1 + a0p0, (17)


где р – основание системы счисления; а – цифра данной системы счисления; n – номер старшего разряда числа. Для двоичной системы счисления

A(p) = an-12n-1 + an-22n-2 + …+ a121 + a020

Как мы уже отмечали, наличие этой системы счисления обусловлено тем, что компьютер построен на логических схемах, имеющих в своем элементарном виде только два состояния — включено и выключено.

Сложение и вычитание двоичных чисел (рис. 1) выполняется так же, как и в других позиционных системах счисления, например десятичной. Точно так же выполняется заем (перенос) единицы из старшего разряда (в старший разряд).

Рис.1.


Шестнадцатеричная система счисления

Шестнадцатеричная система счисления имеет набор цифр {0, 1, 2, ..., 9, А, В, С, D, Е, F} и основание степени (р) — 16.

Количественный эквивалент некоторого целого к-значного шестнадцатеричного числа вычисляется согласно формуле:

A(p) = an-116n-1 + an-216n-2 + …+ a1161 + a0160


Соответствие двоичных чисел и их десятичных и шестнадцатеричных эквивалентов приведено в (табл. 1).


Таблица 1. Шестнадцатеричные цифры


Десятичное число

Двоичная тетрада

Шестнадцатеричное число

0

0000

0

1

0001

1

2

0010

2

3

0011

3

4

0100

4

5

0101

5

6

0110

6

7

0111

7

8

1000

8

9

1001

9

10

1010

А, а

11

1011

В, b

12

1100

С, с

13

1101

D, d

14

1110

Е, е

15

1111

F, f

16

10000

10

Шестнадцатеричная система счисления при вычислениях несколько сложнее, чем двоичная, в частности, в том, что касается правил переносов в старшие разряды (заемов из старших разрядов), при этом используется следующее равенство:

(1 + F=10)16.

Эти переходы очень важны при выполнении сложения и вычитания шестнадцатеричных чисел (рис. 2).

Рис. 2.


Десятичная система счисления

Десятичная система счисления наиболее известна, так как она постоянно используется нами в повседневной жизни. Данная система счисления имеет набор цифр {0, 1, 2, 3, 4, 5, 6, 7, 8, 9} и основание степени (р) – 10.

Количественный эквивалент некоторого целого n-значного десятичного числа вычисляется согласно формуле:

A(p) = an-110n-1 + an-210n-2 + …+ a1101 + a0100


Перевод чисел из одной системы счисления в другую

Перевод в десятичную систему счисления

Перевод в десятичную систему счисления является самым простым. Обычно его производят с помощью так называемого алгоритма замещения, суть которого заключается в следующем: сначала в десятичную систему счисления переводится основание степени р, а затем – цифры исходного числа. Результаты подставляются в формулу (17). Полученная сумма и будет искомым результатом. Неявно при обсуждении двоичной и шестнадцатеричной систем счисления мы производили как раз такое преобразование.


Перевод в двоичную систему счисления

Перевод из десятичной системы счисления

Перевод числа в двоичную систему счисления из десятичной выполняется по описанному далее алгоритму.

1. Разделить десятичное число А на 2. Запомнить частное q и остаток а.

2. Если в результате шага 1 частное q не равно 0, то принять его за новое делимое и отметить остаток а, который будет очередной значащей цифрой числа, и вернуться к шагу 1, на котором в качестве делимого (десятичного числа) участвует полученное на шаге 2 частное.

3. Если в результате шага 1 частное q равно 0, алгоритм прекращается. Выписать остатки в порядке, обратном их получению. Получится двоичный эквивалент исходного числа.

Наример, перевод в двоичную систему счисления числа 24710 иллюстрирует рис. 3. Порядок обхода остатков для получения результата ( 1 1 1 101 1 12) показан стрелками.


Перевод из шестнадцатеричной системы счисления

Перевод из шестнадцатеричной системы счисления заключается в последовательной замене шестнадцатеричных цифр соответствующими двоичными тетрадами, согласно табл.1. К примеру, двоичное число, соответствующее числу e4d516, равно 1110 0100 1101 01012.


Перевод в шестнадцатеричную систему счисления

Перевод из десятичной системы счисления

Общая идея алгоритма перевода из десятичной системы счисления в шестнадцатеричную аналогична рассмотренной ранее в алгоритме перевода в двоичную систему счисления из десятичной.

1. Разделить десятичное число А на 16. Запомнить частное q и остаток а.

2. Если в результате шага 1 частное q не равно 0, то принять его за новое делимое, записать остаток и вернуться к шагу 1.

3. Если частное q равно 0, прекратить работу алгоритма. Выписать остатки в порядке, обратном их получению. Получится шестнадцатеричный эквивалент исходного десятичного числа.

К примеру, перевод в шестнадцатеричную систему счисления числа 3276710 иллюстрирует рис. 4. Порядок обхода остатков для получения результата (7fff16) показан стрелками.

Перевод из двоичной системы счисления

Идея алгоритма состоит в том, что двоичное число разбивается на тетрады начиная с младшего разряда. Далее каждая тетрада приводится к соответствующему шестнадцатеричному числу, согласно табл. 1.

К примеру, пусть требуется перевести в шестнадцатеричную систему счисления следующее число:

111001011010111101011000110110001111010101011012.

Разобьем его на тетрады:

0111 0010 1101 0111 1010 1100 0110 1100 0111 1010 1010 1101


По тетрадам приводим последовательности нулей и единиц к шестнадцатеричному представлению:

72d7ac6c7aad.

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

72d7ac6c7aad16.

Перевод дробных чисел

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


A(p) = an-1pn-1 + an-2pn-2 + …+ a1p1 + a0p0 + a-1p-1 + a-2p-2 +…+ a-mp-m (18)



Таблица 2. Значения отрицательных степеней по основанию числа 2

Отрицательная степень

Два в указанной степени

1

0,5

2

0,25

3

0,125

4

0,0625

5

0,03125

6

0,015625

7

0,0078125


Таблица 3. Значения отрицательных степеней по основанию числа 16

Отрицательная степень

Шестнадцать в указанной степени

1

0,0625

2

0,00390625

3

0,000244140625

4

0,0000152587890625

5

0,00000095367431640625

6

0,000000059604644775390625

7

0,0000000037252902984619140625

Общий алгоритм перевода десятичной дроби в другую систему счисления можно представить следующей последовательностью шагов.

1. Выделить целую часть десятичной дроби и выполнить ее перевод в выбранную систему счисления по алгоритмам, рассмотренным ранее.

2. Выделить дробную часть и умножить ее на основание выбранной новой системы счисления.

3. В полученной после умножения дробной части десятичной дроби выделить целую часть и принять ее в качестве значения первого после запятой разряда числа в новой системе счисления.

4. Если дробная часть значения, полученного после умножения, равна нулю, то прекратить процесс перевода. Процесс перевода можно прекратить также в случае, если достигнута необходимая точность вычисления. В противном случае вернуться к шагу 3.

Пример. Пусть требуется перевести в двоичную систему счисления десятичную дробь 108,40610.

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


Перевод чисел со знаком

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