Где я могу найти 8080 к x86 ассемблерному инструменту преобразования? [закрытый]

15
задан Bill Forster 2 January 2012 в 21:42
поделиться

3 ответа

Должен ли вы фактически перевести код, или будет достаточно эмулятор ? Там даже один написан в JavaScript!

3
ответ дан 1 December 2019 в 04:34
поделиться

Вы можете рассмотреть несколько альтернатив. Один был бы статический двоичный перевод в C, это, вероятно, проще, если вы собираете код 8080 в двоичный. Не видя свой код, который вы, вероятно, у вас будут проблемы, поскольку это не одно на одно. Ресурсы в 8080 году или доске работали на WOOT, соответствуют 8086, вы планируете запустить ваш код под. Если вы переведете на C, то теперь вы можете нацелить что-либо сейчас или в настоящем и не ограничиваться X86 в среде симуляции, чтобы охватить предыдущую проблему. Это не так страшно или больно, как может показаться ... довольно весело на самом деле.

Что-то, о чем я думал о том, чтобы делать, вместо перевода в C переводит на байт ООО «LLVM».

Редактировать:

Проблема с ассемблером в ассемблере, помимо необходимости сделать это снова в течение нескольких дней, не является функцией инструкций (регистрируйте a = register a + 1), но флаги и условные ветви (регистр A = Регистрация A + 1, если A == 0 Z = 1 else Z = 0, ...). Исходя из вашего понимания 8080 против Z80, вы знаете, что вам придется найти или создать инструмент, который может анализировать этот ассемблер. Моя теория состоит в том, что у вас больше шансов найти ассемблер в двоичный инструмент, чем инструмент преобразования. Из бинарного двоина вы можете эмулировать (намного больше, чем полную скорость) или сделать статический двоичный перевод, в идеале C. с помощью C вы можете быть небрежными, вы можете иметь каждую инструкцию иметь код, чтобы обновить флаги, а затем оптимизатор в C Компилятор может удалить мертвый код. Что-то ассемблер не собирается делать, оставив вас с тоннами неиспользованных инструкций, переходя прямо к X86. Я не читал руководство или слишком много кода, чтобы его можно было легко обрабатывать, но в дополнение к индивидуальным инструкциям есть вопрос стека и памяти и регистрации и пользовательского интерфейса. Если бы это было использовать графический / видеоинтерфейс, вам придется заменить этот код оптом, если стеки варьируются между 8080 и X86, то вам придется обрабатывать это, и, вероятно, будут адреса, которые вы собираюсь иметь дело с. Харкодируемые легко, вычисляемые гораздо сложнее, прыжковые таблицы и тому подобное. Как используется стек для прохождения параметров, и вызовы могут варьироваться между процессорами, и автор может сделать уборку стека так, чтобы он не переводил инструкцию для инструкции. Это все, что я ударил, когда я сделал ассемблер к переводу ассемблера, предоставил это не было из дедушка процессора к его внуку, как 8080 до X86. Я пошел пинать и кричать, но в конечном итоге увидел, что, по крайней мере, на мой взгляд, перевод на C, охватывающую так много из этих проблем. Я готов сделать ставку, основываясь на том, что вы сказали о вариациях 8080 из Z80, вам, возможно, придется вообще написать свой собственный аналитический парсер. Здесь снова задача кажется невероятно огромным, ассемблером или статическим переводчиком, когда вы начинаете думать о том, сколько указаний есть, сколько вариаций. Но как только вы попадаете в это, шлифование через инструкции не так уж плохо.

Я понимаю, что мой ответ не связан напрямую к вопросу, вопрос в том, где я могу найти этот инструмент. Мой ответ должен делать с: если вы не найдете инструмент, то тогда. Если вы найдете инструмент, то хорошо, сделано. Если вы найдете инструмент, который заканчивается, то вы можете передавать или программировать оттуда оттуда. Потому что я сделал это до нескольких раз, я знаю, что полный перевод может быть забавным проектом, особенно если программа Retro - это то, что вы заботитесь о достаточном, чтобы мигрировать до настоящего времени.

3
ответ дан 1 December 2019 в 04:34
поделиться

Используйте этот плагин: http://plugins.jquery.com/project/getAttributes

-121--4028857-

Непроверенное предложение:)

При обнаружении события нажатия кнопки вы читаете, что такое [scrollView contentOffset] .x, и устанавливаете для смещения это значение при выключенной анимации.

-121--2281037-

Похоже, что существует коммерческий 8080 8086 переводчика, доступный как часть пакета здесь .

1
ответ дан 1 December 2019 в 04:34
поделиться
Другие вопросы по тегам:

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