The OpenNET Project / Index page

[ новости /+++ | форум | теги | ]



Индекс форумов
Составление сообщения

Исходное сообщение
"Первый выпуск dav1d, декодировщика AV1 от проектов VideoLAN ..."
Отправлено Аноним84701, 12-Дек-18 22:55 
>> Вот и стал Си языком низкого уровня.... а у меня в зачетке
>> была строчка 'Программирование на "ЯВУ"'
> Всё, что на вид достаточно похоже на человеческий (английский) язык, это ЯВУ по ГОСТу. ))

Для "когнитивного диссонансу" можно вспомнить HLA

HLA (High Level Assembly, от автора "The Art of Assembly Language")


program cmdline;
#include( "stdio.hhf" );
#include( "args.hhf" );

static
    s:string;    
begin cmdline;
    // Grab the whole command line and print it:
    arg.CmdLn();
    stdout.put( "Command line = '", (type string eax), "'" nl );

    // Display the number of command line parameters:
    arg.c();
    stdout.put( "argc=", (type int32 eax ), nl );
    // Print each of the individual command line parmeters:
    
    mov( eax, ecx );


:)

Хотя в принципе, все более-менее известные (MASM/TASM/NASM/YASM/FASM) имели кучу высокоуровневых примочек (чего только стоит макросы LOCAL var1,var2 , вместо "православных" [ebp-x], [ebp-y]).

У MASM/TASM макросы позволяли писать такое:


.while GetMessage(ADDR msg, 0,0,0)
    .if !TranslateAccelerator(hwnd, hAccel, ADDR msg)
        invoke TranslateMessage, ADDR msg
        invoke DispatchMessage, ADDR msg
    .endif
    .endw

Или довольно небезызвестное "uses REG":


new_explosion proc uses edi edi from_x:dword, from_y:dword
LOCAL color:DWORD

и вроде-как-ассемблер-а-не-компилятор собирал сам весь стэкфрейм, вставлял автоматически PUSH edi/esi вначале и POP EDI/ESI; LEAVE; RETN N перед каждым (простым) ret  (для которого им же генерировалось правильный N).
В общем, "Cи с регистрами".
 

Ваше сообщение
Имя*:
EMail:
Для отправки ответов на email укажите знак ! перед адресом, например, !user@host.ru (!! - не показывать email).
Более тонкая настройка отправки ответов производится в профиле зарегистрированного участника форума.
Заголовок*:
Сообщение*:
 
При общении не допускается: неуважительное отношение к собеседнику, хамство, унизительное обращение, ненормативная лексика, переход на личности, агрессивное поведение, обесценивание собеседника, провоцирование флейма голословными и заведомо ложными заявлениями. Не отвечайте на сообщения, явно нарушающие правила - удаляются не только сами нарушения, но и все ответы на них. Лог модерирования.



Партнёры:
PostgresPro
Inferno Solutions
Hosting by Hoster.ru
Хостинг:

Закладки на сайте
Проследить за страницей
Created 1996-2024 by Maxim Chirkov
Добавить, Поддержать, Вебмастеру