Принципы работы системы IBM/370

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

Рубрика Программирование, компьютеры и кибернетика
Вид книга
Язык русский
Дата добавления 12.06.2014
Размер файла 658,3 K

Отправить свою хорошую работу в базу знаний просто. Используйте форму, расположенную ниже

Студенты, аспиранты, молодые ученые, использующие базу знаний в своей учебе и работе, будут вам очень благодарны.

+--------------------------------------------------------+

0 7 8 11 12 15 16 19 20 31 32 35 36 47

Второй операнд преобразуется из упакованного формата в формат с зоной, и результат помещается по адресу первого операнда.

Цифры и знак упакованного операнда, пересылаемые на место первого операнда, не изменяются. К каждой цифре слева добавляется зона 1111, и таким образом формируется байт результата. Исключение составляет самая младшая цифра, к которой слева добавляется код знака второго операнда. Допустимость кодов знака и цифр не проверяется.

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

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

Признак результата не изменяется.

Программные прерывания:

доступ (выборка второго операнда, запись первого операнда).

Замечания по программированию

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

Глава 10. Команды обработки десятичных данных

Команды обработки десятичных данных обеспечивают арифметические операции, сдвиг и редактирование десятичных данных. Эти команды в совокупности составляют средства обработки десятичных данных.

10.1 Формат данных

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

Зонный формат

Z

N

Z

N

...

Z

N

Z/S

N

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

Упакованный формат

D

D

D

D

...

D

D

D

S

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

И цифры, и знак представлены в виде 4-разрядных кодов.

Сдвиг и арифметические операции выполняются с операндами, представленными в упакованном формате; результаты операции также получаются в упакованном формате.

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

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

Команды ПЕРЕСЫЛКА ЗОН и ПЕРЕСЫЛКА ЦИФР обеспечивают работу с данными, представленными в зонном формате. Команда УПАКОВАТЬ преобразует данные из зонного формата в упакованный, а команда РАСПАКОВАТЬ выполняет обратное преобразование. Эти команды не относятся к средствам обработки десятичных данных и описаны в главе 9. Команды ОТРЕДАКТИРОВАТЬ и ОТРЕДАКТИРОВАТЬ И ОТМЕТИТЬ могут быть также использованы для перевода данных из упакованного формата в формат с зоной.

Десятичные операнды могут располагаться только в основной памяти.

Поля, которые они занимают, могут начинаться с любого байта и иметь длину от 1 до 16 байтов. Для команд редактирования операнды могут иметь длину до 256 байтов.

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

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

Во всех командах обработки десятичных данных, за исключением команд ОТРЕДАКТИРОВАТЬ и ОТРЕДАКТИРОВАТЬ И ОТМЕТИТЬ, любо поля операндов не должны перекрываться, либо у них должны совпадать самые правые байты. В команде СЛОЖЕНИЕ С ОЧИСТКОЙ поля операндов могут перекрываться, но при этом самый правый байт первого операнда должен находиться правее самого правого байта второго операнда; при правильном перекрытии операндов результат будет получен такой же, как если бы операнды обрабатывались справа налево. Так как в процессе выполнения арифметических операций коды цифр и знаков проверяются, то неправильное перекрытие полей операндов рассматривается как особый случай в данных. В командах редактирования перекрытие операндов приводит к непредсказуемым результатам.

Во время выполнения команд обработки десятичных данных доступ ко всем байтам поля операнда не обязательно осуществляется одновременно, а запись в ячейку не обязательно непосредственно следует за выборкой из нее. Кроме того, в поле результата может быть помещено промежуточное значение, отличное от исходного операнда и конечного результата. Таким образом, при наличии общего поля основной памяти в случае, когда оба процессора обращаются к одному и тому же операнду, результат операции для таких команд, как СЛОЖЕНИЕ ДЕСЯТИЧНОЕ, будет непредсказуем.

10.2 Представление чисел

Числа представляются в виде выровненных по правым границам поля целых чисел в прямом коде со знаком плюс или минус.

Цифры 0-9 имеют соответственно двоичные коды 0000-1001. Коды 1010-1111 используются только как коды знака, причем коды 1010, 1100, 1110 и 1111 рассматриваются как плюс, а коды 1011 и 1101 - как минус. Коды 0000-1001 недопустимы в качестве кодов знака. Когда обнаружен неправильный код, распознается особый случай в данных.

Операция прекращается во всех случаях, за исключением того, когда на месте знака встречается недопустимый код. В этом случае операция подавляется.

Несмотря на то что знак в операнде может быть представлен различными кодами, в поле результата (поле первого операнда) операций десятичной арифметики (СЛОЖЕНИЕ ДЕСЯТИЧНОЕ, ДЕЛЕНИЕ ДЕСЯТИЧНОЕ, УМНОЖЕНИЕ ДЕСЯТИЧНОЕ, СДВИГ С ОКРУГЛЕНИЕМ ДЕСЯТИЧНЫЙ, ВЫЧИТАНИЕ ДЕСЯТИЧНОЕ и СЛОЖЕНИЕ С ОЧИСТКОЙ) плюс кодируется в виде 1100, минус - в виде 1101.

Эти коды знаков обеспечиваются даже в том случае, если в результате операции значение операнда остается неизменным; например, сложение числа с нулем или сдвиг операнда на нулевое число позиций. Команды редактирования и команда РАСПАКОВАТЬ вырабатывают код зоны 1111.

10.3 Команды

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

Примечание. При детальном описании каждой команды ее мнемоника и символическое представление операндов даны на языке Ассемблера Системы 370. Например, для команды СЛОЖЕНИЕ ДЕСЯТИЧНОЕ мнемоника - AP, формат операндов - D1(L1,B1),D2(L2,B2).

Замечания по программированию

Команды пересылки и сравнения кодов также могут использоваться при обработке десятичных данных.

Таблица 10.1 Команды обработки десятичных данных

Название

Мнемоническое обозначение

Характеристики

Код

СЛОЖЕНИЕ ДЕСЯТИЧНОЕ

AP

SS

C

PD

A

D

DF

ST

FA

СРАВНЕНИЕ ДЕСЯТИЧНОЕ

CP

SS

C

PD

A

D

F9

ДЕЛЕНИЕ ДЕСЯТИЧНОЕ

DP

SS

PD

A

SP

D

DK

ST

FD

ОТРЕДАКТИРОВАТЬ

ED

SS

C

PD

A

D

ST

DE

ОТРЕДАКТИРОВАТЬ И ОТМЕТИТЬ

EDMK

SS

C

PD

A

D

R

ST

DF

УМНОЖЕНИЕ ДЕСЯТИЧНОЕ

MP

SS

PD

A

SP

D

ST

FC

СДВИГ С ОКРУГЛЕНИЕМ ДЕСЯТИЧНЫЙ

SRP

SS

C

PD

A

D

DF

ST

F0

ВЫЧИТАНИЕ ДЕСЯТИЧНОЕ

SP

SS

C

PD

A

D

DF

ST

FB

СЛОЖЕНИЕ С ОЧИСТКОЙ

ZAP

SS

C

PD

A

D

DF

ST

F8

Обозначения: A - особый случай доступа к памяти;

C - устанавливается признак результата;

D - особый случай в данных;

DF - десятичное переполнение;

DK - особый случай десятичного деления;

PD - средство обработки десятичных данных;

R - событие, связанное с изменением содержимого общего регистра;

SP - особый случай спецификации;

SS - формат SS;

ST - событие, связанное с изменением содержимого основной памяти.

СЛОЖЕНИЕ ДЕСЯТИЧНОЕ

AP D1(L1,B1),D2(L2,B2) [SS]

+--------------------------------------------------------+

¦ FA ¦ L1 ¦ L2 ¦ B1 ¦ D1 ¦ B2 ¦ D2 ¦

+--------------------------------------------------------+

0 7 8 11 12 15 16 19 20 31 32 35 36 47

Второй операнд складывается с первым, и сумма помещается на место первого операнда.

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

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

Поля первого и второго операндов могут перекрываться, но при этом самые младшие байты операндов должны совпадать; так, например, можно сложить число с самим собой.

Знак результата определяется алгебраически. Когда операция завершается без переполнения, нулевая сумма имеет положительный знак; но когда старшие разряды теряются вследствие переполнения, нулевая сумма может быть либо положительной, либо отрицательной в соответствии с тем, каким должен был быть знак правильной суммы.

Признак результата:

0 - сумма равна нулю;

1 - сумма меньше нуля;

2 - сумма больше нуля;

3 - переполнение.

Программные прерывания:

операция (если отсутствуют средства обработки десятичных данных);

доступ (выборка второго операнда, выборка и запись первого операнда);

данные;

десятичное переполнение.

СРАВНЕНИЕ ДЕСЯТИЧНОЕ

CP D1(L1,B1),D2(L2,B2) [SS]

+--------------------------------------------------------+

¦ F9 ¦ L1 ¦ L2 ¦ B1 ¦ D1 ¦ B2 ¦ D2 ¦

+--------------------------------------------------------+

0 7 8 11 12 15 16 19 20 31 32 35 36 47

Первый операнд сравнивается со вторым, и признак результата отражает результат сравнения.

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

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

Признак результата:

0 - операнды равны;

1 - первый операнд меньше;

2 - первый операнд больше;

3 - не бывает.

Программные прерывания:

операция (если отсутствуют средства обработки десятичных данных);

доступ (выборка первого и второго операндов);

данные.

ДЕЛЕНИЕ ДЕСЯТИЧНОЕ

DP D1(L1,B1),D2(L2,B2) [SS]

+--------------------------------------------------------+

¦ FD ¦ L1 ¦ L2 ¦ B1 ¦ D1 ¦ B2 ¦ D2 ¦

+--------------------------------------------------------+

0 7 8 11 12 15 16 19 20 31 32 35 36 47

Делимое (первый операнд) делится на делитель (второй операнд) и замещается частным и остатком.

Частное помещается в левую часть поля первого операнда. Остаток помещается в правую часть поля первого операнда и имеет длину, равную длине делителя. Частное и остаток занимают все поле делимого; следовательно, адресом поля частного является адрес первого операнда. Число байтов, занимаемых частным, равно L1-L2, а код длины частного на единицу меньше (L1-L2-1). Случай, когда код длины делителя больше 7 (15 цифр плюс знак) или больше либо равен коду длины делимого, рассматривается как особый случай спецификации. Операция подавляется, и происходит программное прерывание.

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

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

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

Признак результата не изменяется.

Программные прерывания:

операция (если отсутствуют средства обработки десятичных данных);

доступ (выборка второго операнда, выборка и запись первого операнда);

спецификация;

данные;

десятичное деление.

Замечания по программированию

Максимальная длина делимого составляет 31 цифру и знак. Так как минимальная длина остатка - одна цифра и знак, максимальная длина частного - 29 цифр и знак.

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

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

ОТРЕДАКТИРОВАТЬ

ED D1(L,B1),D2(B2) [SS]

+----------------------------------------------------+

¦ DE ¦ L ¦ B1 ¦ D1 ¦ B2 ¦ D2 ¦

+----------------------------------------------------+

0 7 8 15 16 19 20 31 32 35 36 47

Формат исходных данных (второй операнд) меняется из упакованного на зонный и редактируется по образцу (первый операнд). Результат операции помещается на место первого операнда.

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

Поле длины относится к образцу (первый операнд). Образец представляется в зонном формате и может содержать любые символы алфавита. Исходные данные (второй операнд) представлены в упакованном формате. В левых четырех битах каждого байта исходных данных должен быть код десятичной цифры (0000-1001). Комбинации 1010-1111 воспринимаются как неправильные данные и служат причиной программного прерывания. Правые 4 бита могут быть либо знаком, либо цифрой.

Результат получается таким, как если бы оба операнда обрабатывались слева направо байт за байтом. Перекрытие полей операндов дает непредсказуемый результат.

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

- оставлен без изменения;

- замещен цифрой исходных данных, представленной в формате с зоной;

- замещен первым символом образца, называемым символом-заполнителем.

Что будет сделано с каждым конкретным символом, зависит от типа символа образца, состояния указателя значимости и от того, является ли проверяемая цифра исходных данных нулем.

Символы образца. Имеются четыре типа символов образца: выбор цифры, начало значимости, разделение полей и символ сообщения. Кодируются они следующим образом:

Название

Код

Выбор цифры

0010 0000

Начало значимости

0010 0001

Разделение полей

0010 0010

Символ сообщения

любой другой

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

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

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

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

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

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

Цифра источника переводится из упакованного формата в формат с зоной и запоминается в поле результата. При этом ей присваивается код зоны, равный 1111.

Указатель значимости. Указатель значимости своим состоянием “включен” или “выключен” (1 или 0) показывает соответственно значимость или незначимость последующих цифр источника или символов сообщений. Значащие исходные цифры замещают соответствующие символы выбора цифры или начала значимости в поле результата; символы сообщения в поле результата, являющиеся значащими, не изменяются.

Указатель значимости своим состоянием или “включен” или “выключен” также определяет соответственно отрицательное и положительное исходные числа из источника и является одним из факторов, определяющих признак результата.

Указатель устанавливается в состояние “выключен”, если еще не находится в этом состоянии в начале операции редактирования, если встречается символ-разделитель полей или если обнаруживается код знака плюс в младших четырех битах байта в цифре источника. Любой из кодов 1010, 1100, 1110 и 1111 рассматривается как код знака плюс.

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

Во всех других ситуациях указатель не изменяется. Код знака минус не влияет на указатель значимости.

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

Если в образце встречается символ сообщения и указатель значимости включен, то символ сообщения остается в образце без изменения. Если в образце встречается символ-разделитель или если указатель значимости выключен и в образце встречается символ сообщения, то символ-заполнитель помещается в результате вместо символа образца.

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

Определение признака результата. Все рассматриваемые цифры проверяются на равенство коду 0000. После завершения операции редактирования с помощью признака результата регистрируется знак последнего редактированного поля и равенство нулю всех цифр источника этого поля.

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

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

Когда последнее редактируемое поле не равно нулю и указатель значимости выключен, признак результата устанавливается равным 2, показывая, что последнее поле больше нуля.

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

Признак результата:

0 - последнее поле нулевое;

1 - содержимое последнего поля меньше нуля;

2 - содержимое последнего поля больше нуля;

3 - не бывает.

Программные прерывания:

операция (если отсутствуют средства обработки десятичных данных);

доступ (выборка второго операнда, выборка и запись первого операнда).

Таблица 10.2Операция редактирования

Условия

Результат

Символ образца

Предыдущее состояние указателя значимости

Цифра источника

В младшей позиции источника код знака плюс

Символ результата

Состояние указателя значимости после проверки цифры

Выбор цифры

Выключен

0

-1

Символ-заполнитель

Выключен

1-9

Нет

Цифра источника

Включен

1-9

Да

то же

Выключен

Включен

0-9

Нет

то же

Включен

0-9

Да

то же

Выключен

Начало значимости

Выключен

0

Нет

Символ-заполнитель

Включен

0

Да

то же

Выключен

1-9

Нет

Цифра источника

Включен

1-9

Да

то же

Выключен

Включен

0-9

Нет

то же

Включен

0-9

Да

то же

Выключен

Разделитель полей

-1

-2

-2

Символ-заполнитель

Выключен

Символ сообщения

Выключен

-2

-2

то же

Выключен

Включен

-2

-2

то же

Включен

1 Не влияет на символ результата и новое состояние указателя значимости.

2 Не имеет смысла, так как цифра источника не проверяется.

Замечания по программированию

Как правило, второй операнд короче первого, так как каждая цифра исходных данных переводится в зонный формат и запоминается в первом операнде.

При редактировании общее число символов выбора цифры и начала значимости должно быть равно количеству цифр исходных данных.

Если символом-заполнителем является пробел, символ начала значимости не встречается в образце и все цифры исходных данных являются нулями, то после выполнения операции редактирования пол результата будет заполнено пробелами.

Признак результата или показывает, что последнее поле содержит нули, или в противном случае определяет состояние указателя значимости. Указатель значимости отражает знак исходных данных только в том случае, если последний проверяемый байт источника содержит код знака в правой половине байта. Если одной командой редактируется несколько полей, действие признака результата распространяется только на поле, следующее за последним разделителем полей.

ОТРЕДАКТИРОВАТЬ И ОТМЕТИТЬ

EDMK D1(L,B1),D2(B2) [SS]

+----------------------------------------------------+

¦ DF ¦ L ¦ B1 ¦ D1 ¦ B2 ¦ D2 ¦

+----------------------------------------------------+

0 7 8 15 16 19 20 31 32 35 36 47

Формат исходных данных (второй операнд) преобразуется из упакованного в зонный и редактируется по образцу (первый операнд).

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

Если исключить дополнительное занесение адреса байта в биты 8-31 общего регистра, то операция совпадает с операцией ОТРЕДАКТИРОВАТЬ. Адрес байта заносится каждый раз, когда в поле результата помещается цифра источника в зонном формате при включенном указателе значимости перед проверкой. Адрес регистра 1 явно не задается. Содержимое битов 0-7 регистра не изменяется.

Признак результата:

0 - содержимое последнего поля равно нулю;

1 - содержимое последнего поля меньше нуля;

2 - содержимое последнего поля больше нуля;

3 - не бывает.

Программные прерывания:

операция (если отсутствуют средства обработки десятичных данных);

доступ (выборка второго операнда, выборка и запись первого операнда);

данные.

Замечания по программированию

Команда ОТРЕДАКТИРОВАТЬ И ОТМЕТИТЬ упрощает программирование денежных символов с переменным местоположением Имеется в виду западная система, где обозначение денежной единицы стоит перед, а не после суммы, к которой этот знак относится (например, $1000).. Адрес символа, занесенный в общий регистр 1, на единицу больше адреса байта, в который должен быть помещен знак денежной единицы. Команда ПЕРЕХОД ПО СЧЕТЧИКУ (BCTR) с нулем в поле R2 может быть использована для того, чтобы уменьшить занесенный адрес на единицу.

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

УМНОЖЕНИЕ ДЕСЯТИЧНОЕ

MP D1(L1,B1),D2(L2,B2) [SS]

+--------------------------------------------------------+

¦ FD ¦ L1 ¦ L2 ¦ B1 ¦ D1 ¦ B2 ¦ D2 ¦

+--------------------------------------------------------+

0 7 8 11 12 15 16 19 20 31 32 35 36 47

Произведение множителя (второй операнд) и множимого (первый операнд) замещает множимое.

Длина множителя ограничена 15 цифрами и знаком и должна быть меньше длины множимого. Код длины L2, больший 7 или больший или равный коду длины L1, рассматривается как особый случай спецификации. Операция подавляется, и происходит программное прерывание.

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

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

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

Признак результата остается без изменения.

Программные прерывания:

операция (если отсутствуют средства обработки десятичных данных);

доступ (выборка второго операнда, выборка и запись первого операнда);

спецификация;

данные.

СДВИГ С ОКРУГЛЕНИЕМ ДЕСЯТИЧНЫЙ

SRP D1(L1,B1),D2(B2),I3 [SS]

+--------------------------------------------------------+

¦ F0 ¦ L1 ¦ I3 ¦ B1 ¦ D1 ¦ B2 ¦ D2 ¦

+--------------------------------------------------------+

0 7 8 11 12 15 16 19 20 31 32 35 36 47

Первый операнд сдвигается в направлении и на число десятичных позиций, которые указаны адресом второго операнда. Если задан сдвиг вправо, то результат округляется. При этом используется коэффициент округления, указанный в поле I3. Код команды имеет несколько нестандартную структуру.

Адрес второго операнда для определения данных не используется. Вместо этого содержимое битов 26-31 адреса, рассматриваемое как двоичное число со знаком, указывает направление сдвига и число десятичных позиций, на которое будет сдвинут первый операнд. Остальная часть адреса игнорируется. Если 26-ой разряд адреса равен нулю, то это означает, что сдвиг производится влево. При этом двоичное число в прямом коде в разрядах 27-31 адреса показывает количество десятичных позиций, на которое производится сдвиг. Равенство разряда 26 единице означает сдвиг вправо, причем в этом случае разряды 26-31 содержат двоичное число в дополнительном коде, определяющее величину сдвига.

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

Во время сдвига вправо разряды 12-15 поля I3 кода команды используются для округления результата. Округление производится сложением содержимого этих битов с последней выдвинутой цифрой сдвигаемого операнда. Если при этом возникает перенос, то он распространяется влево. При этом сложении первый операнд и коэффициент округления рассматриваются как положительные числа. На всех шагах, за исключением проверки правильности младших кодов и участия в округлении, цифры, выдвинутые за младшую позицию поля, игнорируются и теряются.

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

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

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

Признак результата:

0 - результат равен нулю;

1 - результат меньше нуля;

2 - результат больше нуля;

3 - переполнение.

Программные прерывания:

операция (если отсутствуют средства обработки десятичных данных);

доступ (выборка и запись первого операнда);

данные;

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

Замечания по программированию

Благодаря применению дополнительного кода операция СДВИГ С ОКРУГЛЕНИЕМ может использоваться для сдвига до 31 десятичной позиции влево и до 32 десятичных позиций вправо. Этого достаточно для очищения всех цифр в любом десятичном поле, даже если задано округление.

ВЫЧИТАНИЕ ДЕСЯТИЧНОЕ

SP D1(L1,B1),D2(L2,B2) [SS]

+--------------------------------------------------------+

¦ FB ¦ L1 ¦ L2 ¦ B1 ¦ D1 ¦ B2 ¦ D2 ¦

+--------------------------------------------------------+

0 7 8 11 12 15 16 19 20 31 32 35 36 47

Второй операнд вычитается из первого, и разность помещается на место первого операнда.

Вычитание алгебраическое с учетом знаков и всех цифр обоих операндов. Команда ВЫЧИТАНИЕ ДЕСЯТИЧНОЕ аналогична команде СЛОЖЕНИЕ ДЕСЯТИЧНОЕ, за исключением того, что положительный знак второго операнда рассматривается как отрицательный и, наоборот, отрицательный знак рассматривается как положительный.

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

Признак результата:

0 - разность равна нулю;

1 - разность меньше нуля;

2 - разность больше нуля;

3 - переполнение.

Программные прерывания:

операция (если отсутствуют средства обработки десятичных данных);

доступ (выборка второго операнда, выборка и запись первого операнда);

данные;

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

Замечания по программированию

Операнды в команде ВЫЧИТАНИЕ ДЕСЯТИЧНОЕ, даже когда их длины не равны, могут перекрываться, но так, чтобы совпадали их младшие байты. Это свойство может быть использовано для того, чтобы установить в нуль все поле целиком или его младшую часть.

СЛОЖЕНИЕ С ОЧИСТКОЙ

ZAP D1(L1,B1),D2(L2,B2) [SS]

+--------------------------------------------------------+

¦ F8 ¦ L1 ¦ L2 ¦ B1 ¦ D1 ¦ B2 ¦ D2 ¦

+--------------------------------------------------------+

0 7 8 11 12 15 16 19 20 31 32 35 36 47

Второй операнд помещается на место первого.

Операция эквивалентна сложению с нулем. Нулевой результат положителен. Когда старшие цифры из-за переполнения теряются, нулевой результат имеет знак второго операнда.

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

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

Признак результата:

0 - результат равен нулю;

1 - результат меньше нуля;

2 - результат больше нуля;

3 - переполнение.

Программные прерывания:

операция (если отсутствуют средства обработки десятичных данных);

доступ (выборка второго операнда, запись первого операнда);

данные;

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

Глава 11. Команды с плавающей точкой

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

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

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

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

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

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

11.1 Формат данных

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

Четырем регистрам с плавающей точкой присвоены номера 0, 2, 4 и 6. Указание регистра с нечетным номером в поле R1 или R2 команды с плавающей точкой вызывает подавление операции и программное прерывание по особому случаю спецификации.

Короткое число с плавающей точкой:

+--------------------------------------------------+

¦ ???? ¦ ?????????????? ¦ ???????? ¦

+--------------------------------------------------+

0 1 7 8 31

Длинное число с плавающей точкой:

+--------------------------------------------------+

¦ ???? ¦ ?????????????? ¦ ???????? ¦

+--------------------------------------------------+

0 1 7 8 31

Расширенное число с плавающей точкой:

+--------------------------------------------------+

¦ ???? ¦ ?????????????? ¦ ????? ???????? ¦

¦ ¦ ¦ 28-???????? ???????? ¦

+--------------------------------------------------+

0 1 7 8 31

+--------------------------------------------------+

¦ ///////// ¦ ?????? ???????? 28-???????? ???????? ¦

+--------------------------------------------------+

64 71 72 63

В коротком и длинном форматах первый бит является знаковым. Следующие 7 разрядов заняты характеристикой. Затем идет поле, содержащее мантиссу, которая в зависимости от формата состоит из 6 или 14 шестнадцатеричных цифр.

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

Расширенное число с плавающей точкой имеет 28-цифровую мантиссу и состоит из двух длинных чисел с плавающей точкой, находящихся в последовательных регистрах с плавающей точкой. В качестве источников расширенных операндов или для приема расширенных результатов операции могут использоваться две пары регистров с плавающей точкой, а именно регистры 0, 2 и регистры 4, 6. Указание любой другой пары регистров вызывает подавление операции и программное прерывание по особому случаю спецификации.

Два длинных числа с плавающей точкой, составляющие расширенное число с плавающей точкой, называются соответственно старшей и младшей частями последнего. старшая часть может быть любым длинным числом с плавающей точкой. Если она нормализована, то расширенное число считается нормализованным. Характеристика старшей части является характеристикой всего расширенного числа, а знак старшей части - знаком расширенного числа.

Поле мантиссы младшей части содержит 14 младших шестнадцатеричных цифр 28-цифровой расширенной мантиссы. Знак и характеристика младшей части расширенного операнда игнорируются; предполагается такое значение числа, у которого знаки младшей и старшей частей одинаковы, а характеристика младшей части на 14 единиц меньше характеристики старшей части. В расширенных результата операции знак младшей части устанавливается таким же, как знак старшей части, и, если результат не является истинным нулем, характеристика младшей части устанавливается на 14 единиц меньше, чем характеристика старшей части. Если при вычитании числа 14 значение характеристики младшей части становится меньше нуля, то она увеличивается на 128 по сравнению со своим действительным значением. Исчезновение порядка указывается только в том случае, если происходит исчезновение характеристики старшей части.

Для коротких и длинных операндов имеется полный набор команд с плавающей точкой. При выполнении этих команд получается результат, который имеет такой же формат, как и исходные операнды; исключение составляют те случаи в команде УМНОЖЕНИЕ, когда при умножении короткого множимого на короткий множитель получается длинное произведение. Для расширенных операндов предусмотрены команды сложения, вычитания и умножения с нормализацией. Кроме того, предусмотрены две команды умножения, при выполнении которых умножение длинного множимого на длинный множитель дает расширенное произведение. Команды округления обеспечивают округление с целью преобразования расширенного формата в длинный и длинного в короткий.

Замечания по программированию

Длинное число с плавающей точкой может быть преобразовано в расширенный формат путем присоединения любого длинного числа, имеющего нулевую мантиссу, включая истинный нуль. Преобразование расширенного формата в длинный может производиться путем отбрасывания младшей части или с помощью команды ЗАГРУЗКА С ОКРУГЛЕНИЕМ.

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

11.2 Дополнительная цифра

Хотя конечные результаты имеют мантиссу, состоящую из 6 цифр в коротком формате, из 14 цифр в длинном формате и из 28 цифр в расширенном формате, промежуточные результаты выполнения команд СЛОЖЕНИЕ С НОРМАЛИЗАЦИЕЙ, ВЫЧИТАНИЕ С НОРМАЛИЗАЦИЕЙ, СЛОЖЕНИЕ БЕЗ НОРМАЛИЗАЦИИ, ВЫЧИТАНИЕ БЕЗ НОРМАЛИЗАЦИИ, СРАВНЕНИЕ, ПОПОЛАМ и УМНОЖЕНИЕ могут иметь еще одну дополнительную младшую цифру. Эта цифра служит для повышения точности конечного результата.

11.3 Представление чисел

Мантисса числа с плавающей точкой выражается шестнадцатеричными цифрами. Предполагается, что точка находится непосредственно слева от старшей цифры мантиссы. Предполагается также, что мантисса должна быть умножена на степень числа 16. Эта степень указывается с помощью характеристики (разряды 1-7 в форматах с плавающей точкой). Биты поля характеристики могут представлять числа от 0 до 127. Для отображения как больших, так и малых абсолютных величин производится формирование характеристики путем добавления числа 64 к действительному значению порядка. Таким образом, диапазон значений порядка составляют числа от -64 до +63. Этот метод записи дает представление порядка относительно числа 64 Аналогичный способ записи порядка (так называемый смещенный порядок) используется и в современных вычислительных машинах, однако порядок показывает степень числа 2, а не 16, и может иметь более 7 разрядов для увеличения диапазона представимых чисел..

Как для положительных, так и для отрицательных величин мантисса выражается в прямом коде, а знак указывается битом знака. Если бит знака равен нулю, число является положительными, если единице - отрицательным. Диапазон абсолютных величин (M), представимый нормализованными числами с плавающей точкой, составляет:

- в коротком формате от 16-65 до (1-16-6)1663;

- в длинном формате от 16-65 до (1-16-14)1663;

- в расширенном формате от 16-65 до (1-16-28)1663.

Приблизительно диапазон представимых чисел для всех форматов составляет от 5,410-79 до 7,21075.

Число с нулевой характеристикой, нулевой мантиссой и положительным знаком называется истинным нулем. Если расширенный результат является истинным нулем, это означает, что и старшая, и младшая части являются истинными нулями.

Истинный нуль может появиться в результате арифметической операции при определенных значениях операндов. Результат операции принудительно устанавливается равным истинному нулю: 1) если имеет место исчезновение порядка и бит маски исчезновения порядка в PSW равен нулю; 2) если мантисса результата операции сложения или вычитания равна нулю и бит маски значимости в PSW равен нулю; 3) если операнд команды ПОПОЛАМ, один или оба операнда команды УМНОЖЕНИЕ или делимое в команде ДЕЛЕНИЕ имеют нулевую мантиссу.

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

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

11.4 Нормализация

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

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

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

Если операция выполняется без нормализации, в мантиссе результата остаются старшие нули. Результат может быть нормализованным или ненормализованным в зависимости от исходных операндов.

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

Замечания по программированию

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

11.5 Команды

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


Подобные документы

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

    курсовая работа [266,9 K], добавлен 24.12.2013

  • Общая характеристика и преимущество использования двоично-десятичных чисел с плавающей точкой. Разработка цифрового автомата. Функциональное назначение выводов корпуса МК51, арифметико-логического устройства, портов. Примеры деления данных чисел.

    курсовая работа [719,3 K], добавлен 12.09.2015

  • Сущность и роль бухгалтерской отчетности. Характеристика хозяйственных операции и системы обработки данных в первичные учетные документы. Особенности логической структуры реляционной базы данных. Описание методов работы с информационной системой.

    курсовая работа [1,1 M], добавлен 26.04.2015

  • Операции, осуществляемые при реализации алгоритмов цифровой обработки сигналов. Применение процессора ADSP-2106x для операций с фиксированной и плавающей точкой. Исключения при выполнении операций с плавающей точкой, режимы и границы округления.

    реферат [35,2 K], добавлен 13.11.2009

  • Основные форматы данных и их представление. Запись чисел в формат с плавающей точкой. Вычитание чисел в формате с плавающей точкой. Регистры операндов и результата, размером формата числа с плавающей точкой, двойной точности. Поля смещённого порядка.

    курсовая работа [78,9 K], добавлен 09.09.2014

  • Проектирование блоков устройства контроля по модулю три матричного умножителя с сокращением вычислений для обработки мантисс чисел с плавающей точкой. Методика выполнения арифметических операций, порядок обработки мантисс по n-разрядным операндам.

    курсовая работа [125,2 K], добавлен 24.09.2010

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

    презентация [170,6 K], добавлен 14.08.2013

  • Общее представление о записи данных. Виды регистров и типов данных с плавающей точкой. Модель выполнения программы SIMD. Формат данных в памяти регистра с плавающей точкой. Состояние и управление потоковым разрешением. Поле управления округлением.

    реферат [1,1 M], добавлен 06.01.2011

  • Понятие машинной команды как закодированного по определенным правилам указания микропроцессору на выполнение некоторой операции или действия. Элементы машинных команд (код операции, операнд) и их виды (передачи данных, управления, арифметико-логические).

    презентация [120,6 K], добавлен 14.10.2013

  • Арифметические команды языка Assembler в архитектуре x86. Организация ветвлений и циклов в программах. Ввод строк с клавиатуры и команды пакетной обработки (строковые команды). Алгоритм вывода на экран в текстовом режиме с использованием средств BIOS.

    контрольная работа [18,0 K], добавлен 05.07.2014

Работы в архивах красиво оформлены согласно требованиям ВУЗов и содержат рисунки, диаграммы, формулы и т.д.
PPT, PPTX и PDF-файлы представлены только в архивах.
Рекомендуем скачать работу.