Что такое хорошие или интересные подобные Ассемблеру языки, но в более высоком уровне? [закрытый]

Ответ таков: вам не следует закрывать свои пользовательские элементы управления (если они не используются в качестве отдельных диалогов, и это не ваш случай, согласно вашему комментарию выше).

Все изменения в видимости пользовательских элементов управления касаются навигации. Как только вы логически перейдете к функции, включающей другой пользовательский контроль, вам придется скрыть старый и показать новый элемент управления. Обычно это делается с помощью выбора шаблона:

Два шаблона, один на UserControl, каждый из которых связан с соответствующей ViewModel:

<DataTemplate DataType="{x:Type ViewModels:FirstViewModel}">
    <controls:FirstControl />
</DataTemplate>
<DataTemplate DataType="{x:Type ViewModel:SecondViewModel}">
    <controls:SecondControl />
</DataTemplate>

Затем позже мы объявляем заполнитель:

<ContentControl Content="{Binding ViewModelSelector}" />
[ 1113] Как только свойство ViewModelSelector вернет FirstViewModel, наш заполнитель покажет FirstControl. Если мы перейдем к свойству ViewModelSelector в SecondViewModel, наш заполнитель автоматически заменит FirstControl на SecondControl и наоборот.

5
задан CodexArcanum 21 April 2009 в 22:58
поделиться

10 ответов

You might want to look at LLVM. It's pseudo-assmbler might be similar to what you've got in mind

4
ответ дан 18 December 2019 в 06:36
поделиться

Win32 in assembler: basically the windows headers for assembler with some nice high-level macros:

http://www.masm32.com/

2
ответ дан 18 December 2019 в 06:36
поделиться

You could try directly using LLVM.

Since there are many tools already available that create/transform it you stand a good chance of being able to make something useul with it (albeit with no ide support).

If you are stuck just write what you want in C++ then compile it with Clang keeping the intermediate form.

For a quick indication of whether you might like it try their online compiler

2
ответ дан 18 December 2019 в 06:36
поделиться

High Level Assembly might also be interesting.

2
ответ дан 18 December 2019 в 06:36
поделиться

C - - это промежуточный язык, предназначенный для генерации в основном компиляторами, находящийся где-то между C и ассемблером

9
ответ дан 18 December 2019 в 06:36
поделиться

Most C compilers that accept inline assembly. Of course, the assembly-optimized parts aren't cross-architecure, but I can't really imagine a cross-architecture assembly language that would be that effective anyway. I'll look into linoleum, but with optimizing compilers and vastly different platforms, with anywhere from 4 to hundreds of registers, I really can't see this working very well.

Another option is C#/Java and their bytecode. But I'd still question the usefulness of hand-optimizing in those.

1
ответ дан 18 December 2019 в 06:36
поделиться

В System z имеется HLASM , который мы используем для небольшой разработки. Он добавляет все виды языковых конструкций более высокого уровня. Помимо того, что HLASM немного переводит сборку в сторону языка высокого уровня, я считаю, что у IBM есть внутренний продукт, основанный на PL / I, который немного снижает C в сторону сборки: -)

0
ответ дан 18 December 2019 в 06:36
поделиться

Однажды я использовал PL / M , и мне показалось, что он всего на один уровень выше сборки. Это было больше похоже на макроязык, но с некоторыми конструкциями более высокого уровня, такими как циклы и тому подобное. Это был интересный опыт.

0
ответ дан 18 December 2019 в 06:36
поделиться

FORTH - не совсем ассемблер, но широко используется и очень низкого уровня.

4
ответ дан 18 December 2019 в 06:36
поделиться

LLVM - хороший ответ.

Некоторые другие интересные языки - это байт-код JVM и MSIL (байт-код платформы .Net). Оба предоставляют системы на основе стека, что сильно отличается от сборки x86.

0
ответ дан 18 December 2019 в 06:36
поделиться
Другие вопросы по тегам:

Похожие вопросы: