Главная » Просмотр файлов » Н. Джехани - Язык Ада (1988)

Н. Джехани - Язык Ада (1988) (1160771), страница 18

Файл №1160771 Н. Джехани - Язык Ада (1988) (Н. Джехани - Язык Ада (1988)) 18 страницаН. Джехани - Язык Ада (1988) (1160771) страница 182019-09-19СтудИзба
Просмтор этого файла доступен только зарегистрированным пользователям. Но у нас супер быстрая регистрация: достаточно только электронной почты!

Текст из файла (страница 18)

Например, А может предшествовать В в типе Е так, что А < В есть Тзк()Е (для типа Е), в то время как А может следовать за В в типе Р так, что А < В есть ГАЕЧКЕ (для типа Р). Эта двусмысленность может быть разрешена при помощи квалификации А и В с их типами. Если А и В оба будут типа Е, тогда приведенное выше выражение можно недвусмысленно записать как Е'(А) < Е'(В) или даже Е'(А) < В. Капли(рицированное выршкение имеет вид Т'(выражение) ( Т'(агрегат), где Т есть имя типа или подтипа.

Выражение или агрегат должны иметь такой же тип, как и базовый тип Т. 2.7. Еще о типах Этот раздел содержит более подробные сведения о скалярных типах (в частности, целых и вещественных), именуемых н ссылочных типах. Использование ограничений в описании новых целых и вещественных типов иллюстрируется вместе с возможностями параметризации именуемых типов и описания рекурсивных типов. " ПЛ/! и Алгол-68 прилержнввютея противоположной точки зрения.

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

Новое ограничение диапазона должно быть совместимо с его предшествующим ограничением. Говорят, что значение удовлетворяет ограничению диапазона, если оно принадлежит множеству значений, определенных с помощью ограничения диапазона. 2.7.1.1. Логический тип Логический тип является либо предопределенным типом ВООЬЕАХ, либо производным от логического типа. Предопределенные операции сравнения и принадлежности возвращают в качестве результата значение типа ВООЬЕАХ.

2.7.1.2. Целые типы Дополнительные целые типы могут быть описаны как Гуре ХЕ% 1ХТЕОЕК Ь гавйе Ь..К; где ХЕ% 1ХТЕОЕК есть имя описываемого типа, а Ь и К определяют наименьшее и наибольшее значения этого типа. Это описание типа эквивалентно следующему: гуре целый тип Ь пеп предопределенный целый тип; ввЫуре ХЕ% 1ХТЕОЕК Ь целый тип гапйе целый тип (Ь)..целый-тип (К); где предопределенный целый тип задается реализацией языка Ада как один из предопределенных целых типов, который включает значения в диапазоне от Ь до К. Несколько примеров: Гуре КАХК Ь гапйе 1..10; Гуре 1О Ь гапйе 1..1ХТЕОЕК'ЬАБТ; Гуре РК1ОК1ТУ Ь пенг 1ХТЕОЕК гапйе 1..10; ввЫуре ХАТ1)КАЬ Ь 1ХТЕОЕК гапйе 0..1ХТЕОЕК'ЬАБТ; — предопределенный подтип в языке Ада впЫуре РОБ1Т1ЧЕ Ь 1ХТЕОЕК гапйе 1..1ХТЕОЕК'ЬАБТ; — предопределенный подтип в языке Ада нпЫуре Н1ОН-РК1ОК!ТУ 1н РК1ОК1ТУ гапйе Н..10; — границы значений типов и подтипов — могут быть статическими или динамическими — выражениями.

Н должно быть <10 во — время выполнения, в противном — случае возбуждается исключение — СОХБТКА1ХТ ЕККОК гуре Р)ЬЕ 1Р Ь пезг 1Р; — производный подтип Типы Щ Р1ЬЕ 11) и подтип РОБ1Т1ЧЕ имеют одинаковое множество значе- ний, однако они все являются различными. 85 Е о гилях 2.7.2.

Вещественные типы Вещественные типы с любой желаемой точностью (зависяшей от ограничений реализации) могут быть определены при помощи спецификации ограничения точности. 2.7.2.1. Типы с плавающей точкой Ограничение точности для типов с плавающей точкой, называемое ограничением плавающего типа, представляется в виде й)я)ЫЭ 1гапйе 1... К1 где Р есть положительное статическое выражение целого типа, а 1.

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

Новый тип с плаваюшей точкой определяется, как Гуре 1чЕ% РЬОАТ Ь в)р!я Р 1гапйе 1...К1; Это описание эквивалентно следующему: $уре плавающий тип !я пеи предопределенный плавающий тип; явЫуре )чЕ% Р ОАТ Ь плавающий тип й1811я Р 1гапяе плавающий тип (Ь)...плаваюший тип 1К)1; где предопределенный плаваюший-тип выбирается среди определенных при реализации языка Ада так, чтобы удовлетворять заданному ограничению плавающего типа. Значение удовлетворяет ограничению плаваюШего типа, если оно удовлетворяет любому ограничению диапазона. Ниже даны примеры типов с плавающей точкой: 1уре %Т КО Ь в)81)я 6; гуре ТЕМРЕКАТ1ЖЕ Ь п1811я 8 гапке 0.00..1000.00; япЫуре АРРКОХ ТЕМРЕКАТ1ЖЕ Ь ТЕМРЕКАТЫКЕ й1811я 6; 1уре %Т ЬВ Ь пезч %Т КО; — массы в двух различных единицах — измерения теперь нельзя — небрежно смешать 1уре МАББ 1я печк КЕА1.

й1811я 7 гапке 0.0..1.0Е10; Для подтипов, производных типов и описаний объектов можно задать либо ограничение плаваюшего типа, либо ограничение диапазона. В описании нового типа с плаваюшей точкой или подтипа с плаваюшей точкой Р ограничение плаваюшего типа должно быть совместимо с любым предшествуюшим ограничением плаваюшего типа на базовый или родительский тип, т. е. число цифр не должно превышать их число, определенное в предшесгвуюшем ограничении. Аналогично если оба типа Р и базовый или родительский типы имеют ограничения диапазона, то новое ограничение диапазона должно быть совместимо со всеми ограничениями, наложенными ранее.

глава г 2.7.2.2. Переносимость программ с объектами с плавающей точкой Различные реализации языка Ада могут поддерживать предопределенные типы с плавающей точкой, такие как РЬОАТ, с различной точностью. Переносимость программ с объектами с плавающей точкой может быть достигнута за счет использования типов с плавающей точкой, описанных с желаемой точностью. Например, пользователь может объявить новый тип с плавающей точкой КЕАЬ как Гуре КЕАЬ 1я й)й1(я 10; и использовать его вместо Н.ОАТ. Когда программа с таким типом переносится из одной реализации языка Ада в другую, она требует от реализации языка Ада поддержки типа КЕАЬ по крайней мере с указанной точностью (10 цифр в данном примере).

Эта стратегия намного лучше, чем используемая в других языках, скажем в языке Фортран. Фортран не позволяет. задавать точность при использовании действительного типа с плавающей точкой обычной точности; точность варьируется в обычных системах между 24 и 48 бит. Следовательно, пользователь должен выбирать между обычной и двойной точностью в соответствии с имеющейся реализацией [1)ОР796[. Например, при переносе программ на Фортране с 60-бит СРС/бб00 на 32-бит 1ВМ/370 пользователь должен заменить переменные с обычной точностью на двойную точность, чтобы получить примерно одинаковую степень точности.

Это может быть крайне неудобным. 2.7.3. Типы с 4иксированной Гпочкой Как отмечалось в гл. 1, ограничение точности для типов с фиксированной точкой, ограничение Фиксированного типа, имеет форму йейа РЕ1. гапке Ь..К; где (эЕЬ является максимальной ошибкой, допустимой в реализации типа с фиксированной точкой, а Ь н К есть выражения, определяющие диапазон значений. При описании подтипов с фиксированной точкой нли производных типов спецификация ограничения диапазона необязательна. Новый тип с фиксированной точкой описывается как гуре ХЕ% НХЕР (я йейа ОЕЬ гапке 1...К; Это описание эквивалентно следующему: гуре вуиксированный тип 1и пеп предопределенный (риксированный тип; ьнЬ(уре ХЕ%' НХЕР 1з (аиксированный тип йе!га РЕЬ гапке Фиксированный тип (Ь).. Фиксированный тип (К); где предопределенный Яиксированный тип выбирается среди определенных при реализации языка Ада так, чтобы удовлетворять заданному ограничению фиксированного типа.

Ниже даны примеры подтипов с фиксированной точкой и производных типов: епЬ(уре ЬО% РКЕС1$1ОХ 1я Н1ОН РКЕС1$10Х йейа 0.1; — тип Н)ОН РКЕС1310Х был определен в гл. 1 67 Е о гинях — как тип с фиксированной точкой с — дельтой 0.00001 1уре ООЫ.АКЯ 1з пезч С1)ККЕХСх'; — С13ККЕХСУ есть тип с плавающей точкой 1уре й1)РЕЕВ 1з пеи С1)йКЕМС1; Ограничение фиксированного типа должно быть совместимо с любым предыдущим ограничением фиксированного типа. Дельта более позднего ограничения должна быть не меньше, чем дельта более раннего ограничения. Если два типа имеют ограничения диапазона, то последующее ограничение должно быть совместимо с предыдущим ограничением.

2.7.4. Именуемые типы Объекты именуемого типа не обязательно должны иметь одинаковые число и типы компонент. Именуемые типы могут быть параметризованы для реализации объектов, которые в основном схожи, но различаются в некоторых деталях, таких как размер и число компонент. 2.7.4.1. Именуемые типы с дискриминантами [3.7.11 Дискриминанты используются для параметризации описаний именуемого типа. Это позволяет значениям именуемого типа иметь альтернативные формы.

Дискриминанты должны быть дискретного типа, и они определяются при описании именуемого типа. Дискриминант является именованной компонентой любого объекта такого именуемого типа. Внутри описания именуемого типа дискриминант может быть использован только: 1) как часть выражения по умолчанию, определяющего начальные значения компонент записи; 2) как дискриминант вариантной части; 3) в определении подтипа компоненты или как граница индекса, или как значение дискриминанта.

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

Значение дискриминанта в объекте может быть изменено только в случае присваивания нового значения всему объекту, а не присваиванием значения только дискриминантузз. " Эти ограничения препятствуют изменению значения лискриминанта без соответствуюших изменений значений компонент. В случае записей с вариантами (обсуждаемых в слелуюшем разделе) изменение значения дискриминаита может приводить в результате к изменениям типа н числа компонент записи. Без этого ограничения было бы возможно нарушение принципа строгой типизации.

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

Тип файла
DJVU-файл
Размер
4,41 Mb
Тип материала
Высшее учебное заведение

Список файлов книги

Свежие статьи
Популярно сейчас
Зачем заказывать выполнение своего задания, если оно уже было выполнено много много раз? Его можно просто купить или даже скачать бесплатно на СтудИзбе. Найдите нужный учебный материал у нас!
Ответы на популярные вопросы
Да! Наши авторы собирают и выкладывают те работы, которые сдаются в Вашем учебном заведении ежегодно и уже проверены преподавателями.
Да! У нас любой человек может выложить любую учебную работу и зарабатывать на её продажах! Но каждый учебный материал публикуется только после тщательной проверки администрацией.
Вернём деньги! А если быть более точными, то автору даётся немного времени на исправление, а если не исправит или выйдет время, то вернём деньги в полном объёме!
Да! На равне с готовыми студенческими работами у нас продаются услуги. Цены на услуги видны сразу, то есть Вам нужно только указать параметры и сразу можно оплачивать.
Отзывы студентов
Ставлю 10/10
Все нравится, очень удобный сайт, помогает в учебе. Кроме этого, можно заработать самому, выставляя готовые учебные материалы на продажу здесь. Рейтинги и отзывы на преподавателей очень помогают сориентироваться в начале нового семестра. Спасибо за такую функцию. Ставлю максимальную оценку.
Лучшая платформа для успешной сдачи сессии
Познакомился со СтудИзбой благодаря своему другу, очень нравится интерфейс, количество доступных файлов, цена, в общем, все прекрасно. Даже сам продаю какие-то свои работы.
Студизба ван лав ❤
Очень офигенный сайт для студентов. Много полезных учебных материалов. Пользуюсь студизбой с октября 2021 года. Серьёзных нареканий нет. Хотелось бы, что бы ввели подписочную модель и сделали материалы дешевле 300 рублей в рамках подписки бесплатными.
Отличный сайт
Лично меня всё устраивает - и покупка, и продажа; и цены, и возможность предпросмотра куска файла, и обилие бесплатных файлов (в подборках по авторам, читай, ВУЗам и факультетам). Есть определённые баги, но всё решаемо, да и администраторы реагируют в течение суток.
Маленький отзыв о большом помощнике!
Студизба спасает в те моменты, когда сроки горят, а работ накопилось достаточно. Довольно удобный сайт с простой навигацией и огромным количеством материалов.
Студ. Изба как крупнейший сборник работ для студентов
Тут дофига бывает всего полезного. Печально, что бывают предметы по которым даже одного бесплатного решения нет, но это скорее вопрос к студентам. В остальном всё здорово.
Спасательный островок
Если уже не успеваешь разобраться или застрял на каком-то задание поможет тебе быстро и недорого решить твою проблему.
Всё и так отлично
Всё очень удобно. Особенно круто, что есть система бонусов и можно выводить остатки денег. Очень много качественных бесплатных файлов.
Отзыв о системе "Студизба"
Отличная платформа для распространения работ, востребованных студентами. Хорошо налаженная и качественная работа сайта, огромная база заданий и аудитория.
Отличный помощник
Отличный сайт с кучей полезных файлов, позволяющий найти много методичек / учебников / отзывов о вузах и преподователях.
Отлично помогает студентам в любой момент для решения трудных и незамедлительных задач
Хотелось бы больше конкретной информации о преподавателях. А так в принципе хороший сайт, всегда им пользуюсь и ни разу не было желания прекратить. Хороший сайт для помощи студентам, удобный и приятный интерфейс. Из недостатков можно выделить только отсутствия небольшого количества файлов.
Спасибо за шикарный сайт
Великолепный сайт на котором студент за не большие деньги может найти помощь с дз, проектами курсовыми, лабораторными, а также узнать отзывы на преподавателей и бесплатно скачать пособия.
Популярные преподаватели
Добавляйте материалы
и зарабатывайте!
Продажи идут автоматически
6430
Авторов
на СтудИзбе
306
Средний доход
с одного платного файла
Обучение Подробнее