Как зайти в Даркнет?!
25th January, 01:11
6
0
Как в tkinter из поля ввода Entry получить значение в одну переменную и обновить строку кнопкой, затем получить ещё одно введённое значение и затем сложить их. Ниже пример кода
21st July, 19:00
895
0
Программа, которая создает фейковые сервера в поиске игровых серверов CS 1.6 Steam
21st March, 17:43
948
0
Очень долго работает Update запрос Oracle
27th January, 09:58
914
0
не могу запустить сервер на tomcat HTTP Status 404 – Not Found
21st January, 18:02
906
0
Где можно найти фрилансера для выполнения поступающих задач, на постоянной основе?
2nd December, 09:48
938
0
Разработка мобильной кроссплатформенной военной игры
16th July, 17:57
1724
0
период по дням
25th October, 10:44
3955
0
Пишу скрипты для BAS только на запросах
16th September, 02:42
3720
0
Некорректный скрипт для закрытия блока
14th April, 18:33
4613
0
прокидывать exception в блоках try-catch JAVA
11th March, 21:11
4381
0
Помогите пожалуйста решить задачи
24th November, 23:53
6086
0
Не понимаю почему не открывается детальное описание продукта
11th November, 11:51
4351
0
Нужно решить задачу по программированию на массивы
27th October, 18:01
4396
0
Метода Крамера С++
23rd October, 11:55
4309
0
помогите решить задачу на C++
22nd October, 17:31
4002
0
Помогите решить задачу на python с codeforces
22nd October, 11:11
4492
0
Python с нуля: полное руководство для начинающих
18th June, 13:58
2599
0
Ассемблер IDE / симулятор для начинающих
Я бы хотел научиться программировать на ассемблере. Я уже делал немного assembly раньше (во время моего курса вычислений уровня А), но это было очень определенно упрощенное 'pseudo-assembler'. Я позаимствовал у своего отца старый справочник по ассемблеру Z80, и это кажется довольно интересным, поэтому, если возможно, я хотел бы попробовать использовать Z80 assembler.
Однако у меня нет процессора Z80 под рукой, и я хотел бы сделать это на моем PC (у меня есть windows или linux, так что либо хорошо). Я нашел различные ассемблеры в интернете, но я не особенно заинтересован в сборке до файла hex, я хочу просто иметь возможность собрать его до чего-то, что может запустить какой-то симулятор на PC. Желательно, чтобы этот тренажер показывал мне содержимое всех регистров, ячеек памяти и т. д.,и позволял мне выполнять инструкции. Я нашел несколько битов программного обеспечения, которые предполагают, что они могут это сделать, но они либо отказываются компилироваться, либо, похоже, не работают должным образом. У кого-нибудь есть какие-нибудь предложения? Если есть хороший симулятор / IDE вещей, доступных для другого типа ассемблера, то я мог бы попробовать это вместо этого (предполагая, что есть хороший онлайн справочник доступен).
Я нашел несколько битов программного обеспечения, которые предполагают, что они могут это сделать , но они либо
откажитесь от компиляции или, кажется, не работает должным образом. У кого-нибудь есть какие-нибудь предложения?
Я нашел несколько битов программного обеспечения, которые предполагают, что они могут это сделать , но они либо откажитесь от компиляции или, кажется, не работает должным образом. У кого-нибудь есть какие-нибудь предложения?
Написать один. Вам лучше всего выбрать хороший, простой набор инструкций (Z80 должен быть идеальным). Я помню, как делал это на первом курсе бакалавриата-я думаю, что мы написали симулятор в C++ и смоделировали 6800 assembly, но на самом деле подойдет любой язык/набор инструкций.
Идея "learning assembly language" в наши дни состоит в том, чтобы получить представление о том, как работают компьютеры на самом низком уровне, только некоторые избранные (авторы компиляторов и т. д.) есть ли реальная причина, чтобы действительно писать код assembly в эти дни. Современные процессоры напичканы функциями, предназначенными для использования компиляторами, чтобы помочь оптимизировать код для скорости / параллельного выполнения / мощности consumption/etc.,, а попытка написать assembly вручную для современного процессора была бы кошмаром.
Не беспокойтесь о том, чтобы подготовить ваше приложение к работе-если вы этого не хотите - по всей вероятности, найденные вами до сих пор биты программного обеспечения были написаны людьми, которые точно так же, как и вы, хотели выяснить, как работает assembly и написали свой собственный симулятор, а затем поняли, сколько работы потребуется для того, чтобы получить его "production ready", чтобы широкая публика могла его использовать.
Вы можете проверить открытый исходный код 8085 тренажера "GnuSim8085", он специально предназначен для использования в образовательных целях, и на самом деле он был написан студентом во время подготовки к экзаменам. Он работает на обоих, Linux и Windows.
MipSim является FREE
Основные характеристики MIPSim 2
- Встроенный редактор кода с такими функциями, как подсветка синтаксиса и сворачивание
- Отображение значений регистров и памяти в различных представлениях (целое число со знаком, целое число без знака, шестнадцатеричное и ASCII)
- Установите размер блока (полное слово, полслова, байт) ячеек памяти для облегчения проверки значений памяти
- Изменение значений регистров и ячеек памяти одним щелчком мыши даже во время моделирования и отладки
- Обновление пользовательского интерфейса в реальном времени позволяет увидеть, как изменяются значения регистров и ячеек памяти во время выполнения
- Встроенный отладчик с функциями выполнения инструкций step-by-step, пропуска инструкций и точки останова
- Инструменты для вставки строк ASCII, UNICODE и целых чисел в память для тестирования вашего кода
- Инструменты для проверки повторяющихся или отсутствующих меток и параметров инструкций
- Сохраните состояние компьютера (значения всех регистров и ячеек памяти), чтобы в следующий раз, когда вы запустите симулятор, вы могли продолжить с того места, где вы оставили!
- Установите скорость моделирования - низкие скорости отлично подходят для trace вашего кода и посмотреть, как он ведет себя
- Кодировать инструкции - производить машинный код в двоичном или шестнадцатеричном представлении
- Catch assembly ошибки времени и времени выполнения
- Более простая отладка с помощью описательных сообщений об ошибках
- Многопоточный дизайн-MIPSim не застревает (надеюсь ;), даже если код assembly выполнен ошибочно или содержит бесконечные циклы
- MIPSim API-сделайте свои собственные программы, которые могут читать и записывать в регистры и память MIPSim, большая гибкость для мощного тестирования!
Если вы находитесь на windows 8085 симулятор является лучшим выбором.
Его пользовательский интерфейс превосходен, чем любой другой симулятор. Также Этот симулятор обеспечивает живой просмотр карты памяти очень быстро (также во время выполнения).
Но этот не поддерживает Windows 98 или ниже, для этого вам нужно проверить другие симуляторы, такие как "GnuSim8085".
Цельтесь выше! Попробуйте и получите симулятор для более мощного языка assembly. Помните, что Z80 и 808x были дешевыми процессорами с низкими и неудобными наборами команд.
Что-то вроде VAX из DEC рассматривалось как Rolls-Royce наборов инструкций. А еще есть сумасшедшие наборы инструкций Risc, которые делают некоторые действительно странные вещи. Может быть, вы сможете найти их определения, чтобы иметь возможность попробовать их реализовать.
WinApe -хороший эмулятор Amstrad CPC . Amstrad CPC был домашним компьютером, произведенным в 80-х гг. он использовал Z80 в качестве своего CPU. С помощью эмулятора вы можете отобразить множество внутренних устройств во время программирования. Он включает в себя отладчик и дизассемблер для кода Z80.
Вы также можете рассмотреть возможность изучения языка x86 assembly, что можно сделать с помощью встроенного ассемблера в Visual Studio - хотя это больший набор инструкций, чем Z80, у вас будет преимущество в том, что вы сможете использовать гораздо лучшие инструменты, чем те, которые доступны для Z80.
Я также только что вспомнил, что инструменты Keil 8051 и Arm имеют симулятор в IDE - есть версии с ограниченным размером, доступные для бесплатной загрузки с www.keil.com
Если вы уже знаете .NET, то это может быть полезно:
http://www.viksoe.dk/code/asmil.htm
Он немного ограничен и может работать только с .NET 1.1, но вы можете по крайней мере использовать для него "modern" IDE, и для этого есть много документов.
<%@ page language="Asm80386" %>
<%
Str: DB "Testing...", 0
mov eax, -2
cmp eax, 2
jle Label1
xor eax, eax
Label1:
lea esi, Str
push esi
call "Response.Write(string)"
pop esi
%>
<br>EAX: <%= eax %>
Другой вариант, если вы хотите пойти "hard core", это получить что-то вроде FreeDOS и VMWare, и использовать это. Я уверен, что гаражная распродажа (продажа автомобиля boot? дворовая распродажа?) или в букинистическом магазине была бы копия старой Библии Питера Нортона DOS interrupts. :)
Лично я изучил x86 asm с помощью Turbo Pascal (который, как я думаю, теперь свободен от Borland?), который имел возможность встроить инструкции assembly в функцию. Это облегчило настройку приложения, и я мог сосредоточиться на том, что хотел сделать. Позже я использовал MacVAX в Оклендском университете, что было нормально, но VAX очень мертвый - вы можете также узнать x86 :)
Посмотрите на эмуляторы Thomas Scherrer Z80 для списка потенциальных эмуляторов, которые вы могли бы использовать.
существует тренажер, который является Visual6502 для обучения основам микропроцессорной архитектуры. В нем есть редактор, ассемблер, операция ввода-вывода и анимация работы микропроцессора. I доступно по следующей ссылке.
http://www.pcsistem.net/visual/index.htm