беззнакові десяткові числа;
· Фіксована мантиса десяткових чисел;
· Відсутність арифметичних операцій над десятковими числами;
· вихід файл сумісний тільки з асемблером ЕОМ IBM 370;
2. Розробка компілятора асемблера
Отримання практичних навичок побудови компілятора з мови високого рівня (МВР), що є одним з елементів системи програмування, що утворюють в сукупності наступний технологічний конвеєр:
При цьому передбачається те, що дана система програмування працює на технологічній ЕОМ (IBM PC) і є по суті крос-системою для об'єктної ЕОМ (ЄС ЕОМ). У цій системі:
· в якості мови високого рівня (МВР) вибрана мова, утворений з підмножини мовних конструкцій ПЛ1, а вихідна програма готується у вигляді текстового файлу технологічної ЕОМ з розширенням * .pli;
· мову Асемблер сформований з мовних конструкцій Асемблер ЄС ЕОМ, а ассемблеровскій еквівалент вихідної програми формується у вигляді текстового файлу технологічної ЕОМ з розширенням * .ass;
· об'єктний еквівалент вихідної програми готується у форматі об'єктних файлів операційної системи ОС ЄС ЕОМ і зберігається у вигляді довічного файлу технологічної ЕОМ з розширенням * .tex;
· завантажувальний еквівалент вихідної програми являє собою машинний код ЄС ЕОМ, запам'ятовується в області ОЗУ технологічної ЕОМ, що є зоною завантаження для емулятора об'єктної ЕОМ.
Постановка завдання
Необхідно виконати доробку елементів макету навчальної системи програмування до рівня, що дозволяє обробляти нові для макета конструкції мови високого рівня, застосовані у відповідному варіанті:
Де на вході є вихідний код програми на асемблері ЕОМ IBM 370:
EX04START 0RBASE, 0 *, RBASERRAB, ARRAB, P, D, 0 (0, RRAB) B (3), 0 (RRAB) 15,14PL3 2C PL3APEQU 155EX04
На виході еквівалент вихідної програми у вигляді байт-коду для IBM 370:
Offset 0 1 2 3 4 5 6 7 8 9 ABCDEF
02 45 53 44 40 40 40 40 40 40 00 10 40 40 00 01 ESD@@@@@@
45 58 30 34 40 40 40 40 00 00 00 00 40 00 00 28 EX04@@@(
40 40 40 40 40 40 40 40 40 40 40 40 40 40 40 40@@@@@@@@@@@@@@
40 40 40 40 40 40 40 40 40 40 40 40 40 40 40 40@@@@@@@@@@@@@@
40 40 40 40 40 40 40 40 45 58 30 34 40 40 40 40@@@@@@EX04@@
02 54 58 54 40 00 00 00 40 40 00 02 40 40 00 01 TXT @@@@@
05 F0 40 40 40 40 40 40 40 40 40 40 40 40 40 40?@@@@@@@@@@@@
00000070 40 40 40 40 40 40 40 40 40 40 40 40 40 40 40 40@@@@@@@@@@@@@@
40 40 40 40 40 40 40 40 40 40 40 40 40 40 40 40@@@@@@@@@@@@@@
40 40 40 40 40 40 40 40 45 58 30 34 40 40 40 40@@@@@@EX04@@
A0 02 54 58 54 40 00 00 02 40 40 00 04 40 40 00 01 TXT @@@@@
B0 41 50 F0 1A 40 40 40 40 40 40 40 40 40 40 40 40 AP? @@@@@@@@
C0 40 40 40 40 40 40 40 40 40 40 40 40 40 40 40 40@@@@@@@@@@@@@@
D0 40 40 40 40 40 40 40 40 40 40 40 40 40 40 40 40@@@@@@@@@@@@@@
E0 40 40 40 40 40 40 40 40 45 58 30 34 40 40 40 40@@@@@@EX04@@
F0 02 54 58 54 40 00 00 06 40 40 00 04 40 40 00 01 TXT @@@@@
50 50 F0 22 40 40 40 40 40 40 40 40 40 40 40 40 PP?" @@@@@@@@@@
00000110 40 40 40 40 40 40 40 40 40 40 40 40 40 40 40 40@@@@@@@@@@@@@@
40 40 40 40 40 40 40 40 40 40 40 40 40 40 40 40@@@@@@@@@@@@@@
40 40 40 40 40 40 40 40 45 58 30 34 40 40 40 40@@@@@@EX04@@
02 54 58 54 40 00 00 0A 40 40 00 04 40 40 00 01 TXT @@@@@
58 50 F0 22 40 40 40 40 40 40 40 40 40 40 40 40 XP?" @@@@@@@@@@
00000160 40 40 40 40 40 40 40 40 40 40 40 40 40 40 40 40@@@@@@@@@@@@@@
40 40 40 40 40 40 40 40 40 40 40 40 40 40 40 40@@@@@@@@@@@@@@
40 40 40 40 40 40 40 40 45 58 30 34 40 40 40 40@@@@@@EX04@@
02 54 58 54 40 00 00 0E 40 40 00 04 40 40 00 01 TXT @@@@@
A0 58 50 50 00 40 40 40 40 40 40 40 40 40 40 40 40 XPP@@@@@@@@@@
B0 40 40 40 40 40 40 40 40 40 40 40 40 40 40 40 40@@@@@@@@@@@@@@
C0 40 40 40 40 40 40 40 40 40 40 40 40 40 40 40 40@@@@@@@@@@@@@@
D0 40 40 40 40 40 40 40 40 45 58 30 34 40 40 40 40@@@@@@EX04@@
E0 02 54 58 54 40 00 00 12 40 40 00 06 40 40 00 01 TXT @@@...