OberonCore https://forum.oberoncore.ru/ |
|
введение в маш. коды, оттолкнувшись от Блэкбокса https://forum.oberoncore.ru/viewtopic.php?f=8&t=5979 |
Страница 1 из 1 |
Автор: | Info21 [ Суббота, 17 Декабрь, 2016 14:04 ] |
Заголовок сообщения: | введение в маш. коды, оттолкнувшись от Блэкбокса |
Коллеги, назрела задачка: сделать введение в маш. язык (регистры и проч.) для тех, кто уже кое-чему научился в рамках вводного курса алгоритмики, включая рекурсию, понятие стека, адресного пространства и т.п. То есть можно предположить знание некоторых базовых вещей, связанных с управлением памятью (это объясняется в первую очередь и тут можно обойтись без маш. языка, только 16-ричными адресами и окошком Трапа). Какой-то дизассемблер взять? На какое пособие по маш. языку опереться? Можно ли обойтись дизассемблером в рамках Блэкбокса? Речь не о полном изучении i86-64, а о том, чтобы научить(ся) там ориентироваться, чтобы по мере нужды etc. |
Автор: | Пётр Кушнир [ Суббота, 17 Декабрь, 2016 14:30 ] |
Заголовок сообщения: | Re: введение в маш. коды, оттолкнувшись от Блэкбокса |
Нужен именно x86? А то ведь в Project Oberon 2013 есть описание процессора и интерпретатора маш.кодов аля ARM, а в Compiler Construction есть объяснение, как язык Оберон компилируется в маш.коды и зачем, всякие прологи, эпилоги, адресация, прыжки и условия, операции и всё такое. Насколько я понимаю, подсистема Po от А. Ширяева даёт полный интерпретатор для Блэкбокса. |
Автор: | Info21 [ Суббота, 17 Декабрь, 2016 17:40 ] |
Заголовок сообщения: | Re: введение в маш. коды, оттолкнувшись от Блэкбокса |
Это два разных сюжета, два разных курса. Да, для x86 хотелось бы конкретно и отдельно. |
Автор: | Иван Денисов [ Пятница, 23 Декабрь, 2016 21:51 ] |
Заголовок сообщения: | Re: введение в маш. коды, оттолкнувшись от Блэкбокса |
Посмотрите новую версию с дизассемблером от Йозефа http://blackboxframework.org/unstable/i ... a1.751.zip Он теперь даже кириллические процедуры умеет показывать и перепрыгивает в исходники. Просто откройте в нем любой кодовый файл. Единственный его недостаток пока это то, что адреса показываются без применения сдвигов загрузки (fixup). То есть код как-бы всегда от нуля идет. |
Автор: | Info21 [ Пятница, 23 Декабрь, 2016 22:35 ] |
Заголовок сообщения: | Re: введение в маш. коды, оттолкнувшись от Блэкбокса |
Спасибо, интересно. Кстати, какой справочник по i86 поудобней? |
Автор: | prospero78 [ Среда, 22 Февраль, 2017 19:35 ] |
Заголовок сообщения: | Re: введение в маш. коды, оттолкнувшись от Блэкбокса |
Я не авторитетен по ассемблеру, но тем не менее. Книга Пирогова мне показалась вполне доступной. Смог на nasm организовать boot loader, первичную диагностику и выход в защищённый режим. Дальше, увы, знаний аппаратной части не хватило -- прямой перенос примера на baremetall не взлетел ( перенастройка контроллера прерывания). |
Автор: | ilovb [ Четверг, 23 Февраль, 2017 00:05 ] |
Заголовок сообщения: | Re: введение в маш. коды, оттолкнувшись от Блэкбокса |
Info21 писал(а): Спасибо, интересно. Кстати, какой справочник по i86 поудобней? Ну вообще официальная документация intel вполне вменяемая. https://software.intel.com/en-us/articles/intel-sdm Если понадобятся подробности уровня ниже машинных команд (микрокод и организация процесса вычислений), то на русском есть хороший источник (глава 3): http://www.nsu.ru/xmlui/handle/nsu/9052 В x86 сложнее всего, имхо, разобраться с форматом команды и особенностями разных режимов (32/64 бита). У intel в этом томе: https://software.intel.com/sites/defaul ... vol-2a.pdf На русском не помню источников (хотя вроде у Таненбаума было) зы В документации intel много важной информации сведено в таблички, что довольно удобно. |
Автор: | Info21 [ Четверг, 23 Февраль, 2017 11:06 ] |
Заголовок сообщения: | Re: введение в маш. коды, оттолкнувшись от Блэкбокса |
Большое спасибо. Интел -- это головная боль. |
Автор: | Artyemov [ Четверг, 23 Февраль, 2017 13:45 ] |
Заголовок сообщения: | Re: введение в маш. коды, оттолкнувшись от Блэкбокса |
"Головная боль", завоевавшая всё и вся Затоптали всех, даже (кто-нибудь помнит) DEC |
Автор: | Kubanych [ Четверг, 23 Февраль, 2017 14:56 ] |
Заголовок сообщения: | Re: введение в маш. коды, оттолкнувшись от Блэкбокса |
может, добавить описание игры CoreWars - "Бой в памяти"? |
Автор: | Kemet [ Пятница, 24 Февраль, 2017 06:48 ] |
Заголовок сообщения: | Re: введение в маш. коды, оттолкнувшись от Блэкбокса |
Artyemov писал(а): "Головная боль", завоевавшая всё и вся DEC затоптали собственные акционеры. Которые были акционерами не только DEC. Её сознательно гробили. Другое дело, что даже те, кто это делал сейчас об этом сожалеют.
Затоптали всех, даже (кто-нибудь помнит) DEC |
Страница 1 из 1 | Часовой пояс: UTC + 3 часа |
Powered by phpBB® Forum Software © phpBB Group https://www.phpbb.com/ |