Большая техническая энциклопедия
2 4 7
D L N
А Б В Г Д Е Ж З И Й К Л М Н О П Р С Т У Ф Х Ц Ч Ш Щ Э Ю Я
МА МГ МЕ МИ МЛ МН МО МУ МЫ МЯ

Машинный формат

 
Машинный формат заменяется буквой, которая следует за типом данных, а в случае отсутствия модификатора и типа данных - за видом операции, например, буква R - формат RR от слова REGISTER; буква I - формат SI от слова IMMEDIATE; буква С - формат SS от слова CHARACTER. Исключение составляют команды формата RX и RS, в мнемоническом коде которых информация о машинном формате опускается.
В машинном формате указана не длина пересылаемой области, а код длины, который на единицу меньше, чем длина пересылаемой области.
При рассмотрении машинных форматов команд отмечалось, что каждый программный модуль должен иметь свой базовый адрес, который используется АЛУ процессора при вычислении всех исполнительных адресов памяти. При выполнении программного модуля базовый адрес часто получают и помещают в базовый регистр с помощью команды BALR, которая выполняется первой в программе и сама не требует базирования. В этом случае в регистре г только запоминается продвинутый адрес слова состояния программы. Этот продвинутый адрес и становится базовым адресом программного модуля. Например, по команде BALR 7, 0 в регистре 7 установится базовый адрес, который будет равен начальному адресу программной секции, установленному операционной системой, плюс 2 байта, так как команда BALR занимает 2 байта в памяти.
При рассмотрении машинных форматов команд отмечалось, что каждый программный модуль должен иметь свой базовый адрес, который используется АЛУ процессора при вычислении всех исполнительных адресов памяти. При выполнении программного модуля базовый адрес часто получают и помещают в базовый регистр с помощью команды BALR, которая выполняется первой в программе и сама не требует базирования. В этом случае в регистре п только запоминается продвинутый адрес слова состояния программы. Этот продвинутый адрес и становится базовым адресом программного модуля. Например, по команде BALR 7, 0 в регистре 7 установится базовый адрес, который будет равен начальному адресу программной секции, установленному операционной системой, плюс 2 байта, так как команда BALR занимает 2 байта в памяти.
После перевода в машинный формат число либо добавляется слева нулями, либо слева отбрасываются знак числа и значащие цифры.
При трансляции в машинном формате в 12 - 15 разрядах устанавливаются нули. Поскольку второй операнд в этой команде не рассматривается как адрес, то по этой команде обращение в память за данными не производится.
В реаулвтате в машинном формате появляются коды длины cl и с1 & значения которых на единицу меньше, чем длина, записанная в команде. Необходимость указания длины в каждом конкретном случае зависит от того, какая часть операнда принимает участие в операции.
При трансляции в машинном формате в 12 - 15 разрядах устанавливаются нули. Поскольку второй операнд в этой команде не рассматривается как адрес, то по этой команде обращение в память за данными не производится.
В результате в машинном формате появляются коды длины cl и с13, значения которых на единицу меньше, чем длина, записанная в команде. Необходимость указания длины в каждом конкретном случае зависит от того, какая часть операнда принимает участие в операции.
Положительные числа в машинных форматах данных представлены в прямых кодах. В прямом коде знак кодируется цифрой 0 в нулевом разряде - формата. Ниже показано, как число, равное 11 1011 j, располагается во всех трех форматах, причем точка условно показана за пределами форматов.
Отрицательные числа в машинных форматах данных представлены в дополнительных кодах. В результате инверсии положительного числа единиц целой части числа заменяются нулями, а нули - единицами.
Положительные числа в машинных форматах данных представлены в прямых кодах. В прямом коде знак кодируется цифрой 0 в нулевом разряде формата. Ниже показано, как число, равное 11 1011, располагается во всех трех форматах, причем точка условно показана за пределами форматов.
Отрицательные числа в машинных форматах данных представлены в дополнительных кодах. В результате инверсии положительного числа единицы целой части числа заменяются нулями, а нули - единицами.
Отрицательные числа в машинных форматах данных представлены в дополнительных кодах. Дополнительный код получается из обратного кода, к младшему разряду которого прибавляется единица. В результате инверсии положительного числа единицы целой части заменяются нулями, а нули - единицами.
Для каждой константы приведен машинный формат и характеристика длины. Необходимо отметить, что константы типа В и X в отведенном поле располагаются справа налево. Усечение константы производится слева. Константа типа С помещается в поле слева направо. В случае необходимости производится усечение или дополнение текстовым пробелом ( 40) справа от последнего символа, имеющегося в константе, как показано в константе CLS. Если в константе встречается знак амперсенда или апостроф, то этот знак должен быть удвоен при записи. После трансляции получается один знак амперсенда или один апостроф, как в константах CL9 и CLIO. В области памяти с именем CL11 записаны две константы. Резервирование областей памяти под результат или для промежуточного хранения логических данных производится с помощью оператора DS с типом констант В, X и С. Наиболее часто используется константа типа С.

Для каждой константы приведен машинный формат и характеристика длины. Необходимо отметить, что константы типа В и X в отведенном поле располагаются справа налево. Усечение константы производится слева. Константа типа С помещается в поле слева направо. Если в константе встречается знак амперсенда или апостроф, то этот знак должен быть удвоен при записи. После трансляции получается один знак амперсенда или один апостроф, как в константах CL9 и CLIO. В области памяти с именем CL11 записаны две константы. Резервирование областей памяти лод результат или для промежуточного хранения логических данных производится с помощью оператора DS с типом констант В, X и С. Наиболее часто используется константа типа С.
Такой способ записи операндов, полностью повторяющий машинный формат команды, называется явным представлением адреса.
Схема преобразования данных. Для каждой константы приведен эквивалент машинного формата я ха рактеристика длины.
Схема преобразования данных. Для каждой константы приведен эквивалент машинного формата и ха рактеристика длины.
Выходом из этого положения является использование нескольких машинных форматов, различающихся по своей длине, например форматов длиной 8, 16, 24, 32, 48 и 64 бита. Возможность обработки данных, представляемых в различных форматах, в ЭВМ третьего поколения обеспечивается за счет использования машинного элемента информации, называемого байтом. Один байт обычно используется для кодирования алфавитно-цифрового символа ( буквы, цифры или знака) или двух десятичных цифр. Для кодирования чисел и команд используются последовательности из двух и более байт. Таким образом, использование байта в качестве машинного элемента информации позволяет распределять память с точностью до 8 бит, в результате чего потери памяти не могут превышать 7 бит на элемент данных. Требуемое быстродействие достигается за счет того, что за одно обращение к памяти выбирается слово большой длины, состоящей обычно из 4 или 8 байт.
Для целей кодирования программы не требуется знание машинного формата величин.
Символический формат каждой машинной команды соответствует ее машинному формату.
Литералы являются перемещаемыми термами, поскольку в машинном формате команды на месте литерала будет находиться не значение кон станты, а компоненты адреса, определяющие местоположение данной константы в программе. Литералы уменьшают число символов в программе.
Литералы являются перемещаемыми термами, поскольку в машинном формате команды на месте литерала будет находиться не значение константы, а компоненты адреса, определяющие местоположение данной константы в программе. Литералы уменьшают число символов в программе.
В ходе трансляции каждая константа переводится ассемблером в машинный формат. Константы типа С, X и В заменяются двоичными кодами, константы типа F и Н - числами с фиксированной запятой, а константы типа Е и D - двоичными числами с плавающей запятой.
Если модификатор порядка указывается, то число перед преобразованием в машинный формат умножается на 10 в степени, равной порядку.
Константы, записанные по этому формату, переводятся транслятором а соответствующие машинные форматы. Рассмотрим каждую компоненту формата DC. Выражение символ в подполе названия либо заменяется на имя константы, которое является символическим адресом области памяти, в которой может быть расположено т кратных констант, либо в подполе названия ничего не указывается. Символический адрес относится к левому байту-области памяти, в которой находятся константы.
Константы, записанные по этому формату, переводятся транслятором в соответствующие машинные форматы. Рассмотрим каждую компоненту формата DC. Выражение символ в подполе названия либо заменяется на имя константы, которое является символическим адресом области памяти, в которой может быть расположено т кратных констант, либо в подполе названия ничего не указывается. Символический адрес относится к левому байту области памяти, в которой находятся константы.

При наличии большого количества данных, не приведенных еще к машинному формату, вводить их в ЭВМ с пульта вручную не эффективно. Например, для того чтобы воспользоваться программой анализа схем, оператор должен сформировать на экране дисплея схему, содержащую, может быть, 100 различных элементов. Имея перед глазами схему, оператор должен ввести каждый элемент, правильно его разместить, соединить с уже изображенными элементами и обозначить его численное значение. После того как такая работа проделана, оператор должен проверить получившееся изображение схемы на отсутствие ошибок. Такая работа очень трудоемка и сложна. Именно этим, по-видимому, объясняется, что программы графического анализа схем не получили широкого распространения.
При наличии десятичного порядка в форме Еп число перед преобразованием в машинный формат умножается на 10, отбрасывается дробная часть с округлением результата и число помещается в отведенное поле.
Листинг программы ( часть раздела TXT вычисления выражения. Во время выполнения второй фазы трансляции ассемблер вычисляет я подставляет в машинные форматы команд смещения, которые получаются вычитанием базового адреса из адресов таблицы символов.
Листинг программы ( часть раздела TXT вычисления выражения. Во время выполнения второй фазы трансляции ассемблер вычисляет и подставляет в машинные форматы команд смещения, которые получаются вычитанием базового адреса из адресов таблицы символов.
В языке Ассемблера каждая машинная команда имеет свое символическое изображение, которое подобно машинному формату команды, но не дублирует его. Транслятор Ассемблера переводит символическую запись команды на машинный язык, размещая команды на границах полуслов. Байты, пропущенные при выравнивании на границы полуслов, заполняются нулями.
Как видно из изложенного выше, даже простейшие процедуры преобразования символьного представления числовых значений в машинные форматы и наоборот не очень просты. Алгоритмы усложняются в тех случаях, когда число цифр в символьном представлении заранее неизвестно и его надо находить средствами программы.
Рассмотренные выше хеш-функции предполагают, что значения ключей записей и все промежуточные вычисления не превышают машинных форматов представления числовых данных для используемой ЭВМ. Есть и другие типы Хеш-функции.
Тип константы сообщает компилятору с языка ассемблера информацию, необходимую для формирования этой константы в машинном формате. Для указания типа константы используются специальные символы.
Тип константы определяется одиночным символом, который сообщает транслятору информацию, необходимую-для формирования этой константы в машинном формате. Типы констант: С - символьная, X - шестнадцате-ричная, В-двоичная, F - десятичная с фиксированной запятой, Н - десятичная с фиксированной запятой, Е - десятичная с плавающей запятой, D - десятичная с плавающей запятой, Р - десятичная в упакованном формате, Z - десятичная в зонном формате, А и V - адресные. Тип константы следует за коэффициентом кратности, если он есть.
При обработке такого предложения транслятор переводит заданное число в двоичную систему счисления, представляет его в указанном машинном формате и помещает полученный машинный эквивалент в генерируемую программу, обеспечивая его выравнивание на ближайшую целочисленную границу слова. Если предложение DC было снабжено меткой, то идентификатор, использованный в качестве метки, является именем запасенной константы. С помощью этого имени в программе можно явно ссылаться на данную константу. В качестве значения этого имени-метки принимается адрес байта, начиная с которого размещена запасенная константа.
Ниже схематически показано взаимное расположение содержимого регистра г команды ЕХ и разрядов 8 - 15 всех пяти типов машинных форматов команд.
Ниже схематически показано взаимное расположение содержимого регистра г команды ЕХ и разрядов 8 - 15 всех пяти типов машинных форматов команд.
Сообщение пользователя помимо ключевых слов может содержать различного рода числовую информацию, которая должна быть преобразована из символьного представления в машинный формат целых или вещественных чисел.

Другой способ, более экономичный как по времени, так и по объему внешней памяти, связан с переобозначением данных, представленных в машинном формате.
Электроника ДЗ-28 представляет собой настольную микроЭВМ со встроенным кассетным магнитофоном и специальной клавиатурой, используемой для работы на ДЗ-28 в режиме калькулятора или для ввода в оперативную память команд в машинном формате с последующим их исполнением. Так, например, производится начальная загрузка бейсик-интерпретатора с магнитной ленты и его запуск.
Организация ввода символьной информации. Процесс ввода символьной информации в ЦВМ состоит из трех этапов: 1) считывание символов с носителя информации; 2) формирование слов из последовательности символов и запись слов в ОЗУ; 3) преобразование последовательности символов в машинный формат в соответствии со смыслом ( значением) отдельных символов вводимой информации.
Довольно широкий класс задач информатики связан с обработкой документов, в которых содержимое отдельных символьных полей представлено числовыми данными различного типа, Если эта инфор нация является входной, то ее надо уметь извлекать из документа и преобразовывать в соответствующий машинный формат. Если эти данные формируются по результатам вычислений, то возникает потребность в обратном преобразовании.
Команды ED ( EDIT) - отредактировать И EDMK ( EDIT AND MARK) - отредактировать и отметить предназначены для подготовки данных к выводу на такие устройства, как АЦПУ, экран дисплея, пишущую машинку и др. Необходимость редактирования возникает вследствие того, что данные, находящиеся в памяти во всех машинных форматах неудобны для чтения, за исключением данных, представленных в памяти в символьной форме в соответствии с ДКОИ. Команды редактирования позволяют произвести такое преобразование данных, которое устраняет это неудобство. Они требуют, чтобы исходное поле находилось обязательно в упакованном десятичном формате. Данные операций с фиксированной точкой можно вывести на печать, но для этого необходимо перевести их в упакованный десятичный формат с помощью команды CVD, а затем отредактировать. Вывод данных с плавающей точкой более сложен, так как требует составления дополнительной программы, обеспечивающей перевод данных с плавающей точкой в упакованный десятичный формат с последующим редактированием.
Команды ED ( EDIT) - отредактировать и EDMK ( EDIT AND MARK) - отредактировать и отметить предназначены для подготовки данных к выводу на такие устройства, как АЦПУ, экран дисплея, пишущую машинку и др. Необходимость редактирования возникает вследствие того, что данные, находящиеся в памяти во всех машинных форматах неудобны для чтения, за исключением данных, представленных в памяти в символьной форме в соответствии с ДКОИ. Команды редактирования позволяют произвести такое преобразование данных, которое устраняет это неудобство. Они требуют, чтобы исходное поле находилось обязательно в упакованном десятичном формате.
При разработке первой очереди драйверных программ для программно-управляемых средств АСЭТ, применяемых в ИВК-7 и ИВК-8, с ориентацией в качестве типового ПО на интерпретатор ДС СМ ЭВМ и на расширенные версии ДС ИВК в качестве основных были приняты следующие положения: наличие драйверных функций, позволяющих обращаться к каждому прибору в отдельности, обеспечивающих большую гибкость; простота и наглядность при обращении к драйвер-ным функциям; наличие средств контроля правильности обращения к драйверным функциям с диагностикой возможных ошибок; слежение за текущим состоянием приборов с выдачей соответствующих диагностических сообщений в случае их сбоев или отказов; максимальное использование средств интерпретатора с целью экономии оперативной памяти; разбиение программ, реализующих драиверные функции, на модули для выделения частей общих программных, связанных с согласованием специальных форматов данных с типовым машинным форматом и независимых от применяемого типового ПО; применение, где это возможно, буферизации данных для исключения простоев процессора; введение драйверных функций по устойчивым алгоритмам массовых измерений, повышающих эффективность ИВК; возможность генерации набора драйверных функций для заданного состава приборов.
Машинные форматы команд, рассмотренные выше, требуют числовой записи кода операции и компонент адреса, что связано с большим объемом работы программиста. Символическая форма записи команд освобождает программиста от записи большого количества чисел. Она позволяет в более простой форме записывать кйманды. При явной записи в команде указываются асе три компоненты адреса, как в машинном формате, но запись номеров регистров и f смещения - производится десятичными цифрами. В табл. 2.3 для всей системы команд языка ассемблера приведены их машинные форматы и соответствующие им символические формы записи.
 
Loading
на заглавную 10 самыхСловариО сайтеОбратная связь к началу страницы

© 2008 - 2014
словарь online
словарь
одноклассники
XHTML | CSS
Лицензиар ngpedia.ru
1.8.11