Разница «X» и «Z» в Фортране 77 при представлении для шестнадцатеричного

#fortran

Вопрос:

Я работаю над некоторым устаревшим кодом. Я видел два вида целых чисел:

 z'ffffffff' and 'ffffffff'x
 

от https://docs.oracle.com/cd/E19957-01/805-4939/c4000413626f/index.html
X или Z-это шестнадцатеричные числа. Так в чем же разница между z'ffffffff' and 'ffffffff'x ними ?

Комментарии:

1. Обратите внимание, что ни один из них не был в стандарте FORTRAN 77, хотя O'digits' и Z'digits' (только слева) были в MIL-STD-1753, который был реализован практически всеми реализациями F77 и, следовательно, фактически переносим. Другие формы-это расширения, разработанные различными поставщиками, возможно, несколькими годами ранее, которые Sun внедрила для повышения продаваемости своего оборудования в 1980-х годах. Если вы хотите знать о поставщиках, которые создали (или использовали) различные расширения, я думаю, что это относится к ретрокомпьютингу. Вместо этого SX.

2. См. также stevelionel.com/drfortran/2020/08/11/…

Ответ №1:

Оба были приняты в качестве расширений компилятора компилятором (до Фортрана 90), который использовался для компиляции вашего кода.

В Fortran 90 и более поздних z'0000' версиях разрешен только синтаксис. Стандартная редакция отличается контекстом, в котором именно им разрешено размещаться.

Это '0000'x совершенно нестандартно.