Непейвода Н.Н. Программирование. Раздел 4

Непейвода Н.Н. Программирование. Страница 399

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

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

Транслятор использует информацию об областях значений следую­щим образом. Описание языка предписывает системам программирования обеспечить математическую корректность вычислений в заданной обла­сти, но при условии, что значения не превышают допустимых величин INTEGER'FIRSTи INTEGER'LAST. Для малых значений это указание озна­чает, что можно использовать короткие целые, для больших значений пред­писывается моделировать арифметику, если вычислитель не позволяет соот­ветствующие действия выполнить стандартными командами.

Интересен случай динамических вычислений области. Он осмыслен для динамически возникающих переменных и констант, область которых опре­деляется в момент появления описания их типа (после этого, к примеру, изменение переменной V не повлияет на диапазон данных, тип которых описывается как Mylnt3).

В Аде есть еще одно полезное свойство определения типов, применимое и к типу целых. Можно описать новый тип, который имеет поведение уже существующего типа, но им не является: typeMyNewIntisnewINTEGER;

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

Новости

  • 1
  • 2
Prev Next

Ракета "Ангара-А5В" в ближайшее десятилетие не полетит

24.01.2016

Ракета "Ангара-А5В" в ближайшее десятилетие не полетит

Роскосмос не планирует в течение ближайшего десятилетия осуществлять пуск тяжёлой ракеты-носителя А...

Ученые РФ опровергли выводы исследований о вреде ГМО

24.01.2016

Ученые РФ опровергли выводы исследований о вреде ГМО

Исследователи из Института проблем передачи информации (ИППИ РАН) проанализировали несколько самых п...

Летающие "Крокодилы"

24.01.2016

Летающие "Крокодилы"

20 удивительных фактов о боевом вертолете Ми-24.Этот вертолет стал таким же узнаваемым символом сове...

В Аргентине описали новый вид динозавра-гиганта

24.01.2016

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

Реклама