HLA (програмування) — Вікіпедія
High Level Assembly (HLA) | |
---|---|
Парадигма | об'єктно-орієнтоване програмування |
Розробник | Рендалл Гайд |
Останній реліз | 2.16 (липень 2011) |
Мова реалізації | Ассемблер |
Платформа | IA-32 |
Операційна система | Windows |
Ліцензія | Суспільне надбання |
Звичайні розширення файлів | .hla |
Вебсайт | plantation-productions.com/Webster |
HLA (англ. «High Level Assembl/y/er» — Асе́мблер високого рівня) — мова програмування низького рівня, створена Рендаллем Гайдом. Але з використанням конструкцій таких як IF, WHILE, FOR тощо, запозичених у високорівневих мов програмування (Pascal, Ada і C++). Спочатку розроблявся як інструмент для вивчення мов асемблера у коледжах та університетах з метою використовувати існуючі знання учнів в інших мовах програмування, щоб максимально швидко навчити низькорівневим конструкціям.
Порівняння високорівневого і низькорівневого асемблера[ред. | ред. код]
HLA v2.x підтримує такі самі низькорівневі інструкції як і низькорівневий асемблер. Різниця полягає в тому, що високорівневі асемблери (такі як HLA, MASM, чи TASM на x86) додатково підтримують такі конструкції, як IF, WHILE, FOR, структури, унії і навіть класи.
Компілятор HLA включає в себе стандартну бібліотеку: функції, процедури і макроси, які дають можливість зменшити час на розробку програми.
Приклади програм[ред. | ред. код]
Компіляція програм[ред. | ред. код]
- Встановити компілятор HLA.
- Відкрити командну строку (Від імені адміністратора і перейти в дирикторію розташування <fileName>.hla).
- hla <fileName>.hla — компіляція.
- ./<fileName>.exe — запуск.
«Привіт, світ!»[ред. | ред. код]
program Hello; #include("stdlib.hhf"); begin Hello; stdout.put("Hello, World!"); end Hello;
Цикл for[ред. | ред. код]
program For; #include("stdlib.hhf"); static i: int8; begin For; for( mov( 0, i); i < 10; inc(i) ) do stdout.put( i, nl); // nl - новий рядок endfor; end For;
Матриця[ред. | ред. код]
program Array; #include("stdlib.hhf"); static i: int32; j: int32; twoD: int32[8,4]:=[1,2,3,4,5,6,7,8,9,10,11,12, 13,14,15,16,17,18,19,20,21,22, 23,24,25,26,27,28,29,30,31,32]; // 4 - рядки, 8 - стовпці begin Array; // Програма бере від користувача номер рядка та стовпця // та виводить на екран значення з матриці twoD stdout.put("Прошу подати i: "); stdin.get(i); stdout.put("Прошу подати j: "); stdin.get(j); mov(i,ebx); shl(3,ebx); // shift left - зсування бітів на 3 знаки вліво add(j,ebx); stdout.put("В поданих пунктах i, j, значення = "); stdout.put(twoD[ebx*4]); end Array;
Посилання[ред. | ред. код]
- Офіційна сторінка HLA [Архівовано 9 листопада 2017 у Wayback Machine.]
- Завантаження компілятора HLA для різних OC [Архівовано 23 жовтня 2017 у Wayback Machine.]