Тут возникла небольшая потребность в 8-битном компиляторе, для программирования 8085/8086, поиск в гугле особо ни к чему не привел, кроме того, что когда-либо они существовали. Вообщем если у кого еще нечто подобное осталось, немогли бы вы его выложить...
http://sdcc.sourceforge.net/ - это относительно 80. ну а 86, это любые старые компилеры, например турбо серия. рекомендую турбо-пас-3.1
относительно 8085 http://www.google.com/search?hl=ru&client=opera&rls=ru&q=compiler+8085&btnG=%D0%9F%D0%BE%D0%B8%D1%81%D0%BA&lr= например http://www.oshonsoft.com/8085.html или там http://www.softools.com/zilogdownload.htm
Эм спасибо, попробую я наверное идею с подключением директив в FASM'е. Думаю подключить пару директив и указать некоторые параметры компиляции будет несколько проще... хотя emu8086 надо будет тоже посмотреть...
Странный вопрос, а точнее, обозначение процессоров. 8085 -- действительно 8-разрядный процессор, улучшенная версия 8080. Ну а 8086 -- 16-разрядный, несовместимый по системе команд с 8080/8085, зато совместимый с современными процессорами ПК. В общем, для 808/8085 и 8086 нужны совершенно разные трансляторы.
Оу ептыть, спасибо, что на ошибку указали, чего-то я... эээ... вообщем о потусторонних вещах задумался... Я это еще чего подумал: при переводе машим на 32-х битные регистры тежи интеловцы столкнулись с проблемой совместимости с прежними поколениями (16 бит). Разве подобной ситуации небыло при переходе с 8-бит на 16-бит. Так почему нельзя использовать тежи трансляторы, только используя в них младшие регистры? Это как то связано с архитектурой? Или что получается на выходе через 8-битный транслятор?
Получаются тогда либо не заботились о совместимости либо хотели сделать нечто новое... да-да знаю, мануал (по истории) мне в руки и долой все догадки!
потому что при переходе с 8 на 16 не было проблем перехода как при 32 --> 64. те коммерции, конкуренции, огромных вложений и прочего. уже при переходе дос/вынь3.1 -> вынь95 этот вопрос встал и досе не падает (вынь апи оболочка к натив апи, например)
Просто эра супер-коммерции началась именно с 8086. И кстати, в 8086 и во всех нынешних x86 есть команды для работы с байтами Так что думали все-таки и тогда.
valterg Увы, тогда как раз не думали. 8086 -- _худший_ по архитектуре и системе команд из всех 16-разрядных микропроцессоров, существовавших в конце 1970-х. Тем, кто знаком только с ассемблером ПК (ИА-32), это не очень заметно: сравнивать не с чем. Но кто имел опыт работы с другими "серьёзными" системами ("серьёзными" в смысле достаточной разрядности -- понятно, что 8-разрядные процессоры сравнивать с 16- и тем более с 32-разрядными не слишком корректно), может в полной мере оценить кривизну интеловской архитектуры. Чего стоит только узкая специализация регистров "общего назначения" (для адресации -- только BX, SI, DI, BP, для умножения-деления -- только DX:AX, для строковых операций -- только SI и DI, для счётчика повторений -- только CX) -- хотя, например, у вышедшего в то же время Zilog Z8000 было не 8, а 16 регистров, и они были равноправными (с парой мелких исключений: насколько помню, регистр R0 и регистровая пара R1:R0 не могли использоваться для адресации, а регистровая пара R15:R14 исполняла обязанности указателя стека).
Да, но из за этой так из за этой так называемой кривизны они довольно много выиграли, чего только стоит, что они смогли в 3-х битах расположить 24 регистра (действительно для 32-разрядных). И насчет узкой специализации, что мешает в качестве счетчика использовать любой другой регистр? Регистр СХ - просто привязан к оператору loop, да и по-мойму в этом есть свои плюсы, знать куда занесется остаток от деления, а куда результат, все же лучше чем каждый раз это пришлось бы указывать...
Zoomskij наскоко я помню, 8086 в ИБМ выбрали изза отличной документированости + готовой обвязки. не исключена и подмазка со стороны интела у которого х86 иначе зависал. все дальнейшие сказки про выигрыш - сплошная реклама. сперва ИБМ, потом микрософт, а потом кучи подписавшихся. например, до самого недавнего времени мак (не х86) лихо обходил писи, работая при этом на меньших частотах
Zoomskij Ничего они не выиграли. Декодирование команд намного сложней -- а это лишние транзисторы и меньшая производительность при прочих равных. Специализация вообще ничего хорошего не даёт. С тем же CX не забывайте про строковые операции и префикс повторения -- в них без SI, DI и CX никуда, а значит, постоянно сохранять-восстанавливать надо, лишние межрегистровые пересылки и т.п. С указанием приёмника результата в умножении-делении тоже проблем никаких: почему бы каждый раз не указывать? Вас же не затрудняет указывать, например, для MOV или ADD, так чем DIV и MUL отличаются? Впрочем, к теме топика это отношения не имеет
qqwe Скорей всего, именно взятка решила роль, причём, возможно, конкретно тем лицам, которые разрабатывали ПК -- ведь для ИБМ это была игрушка, никакого серьёзного значения ей не придавали. У того же Z8000 есть куча периферийных микросхем -- не хуже, чем у 8086. Более того, у Z8000 была полноценная виртуальная память со страничной организацией -- то, что у Интела появилось только в 80386. Правда, для этого требовалась отдельная микросхема, ибо на рубеже 1970-80-х впихнуть всё на один кристалл было невозможно технически. Документированность у Z8000 не хуже (во всяком случае, его руководство по процессору и периферии то ли 1980-го, то ли 1981-го года мне показалось более толковым, чем аналогичное от Интела). В общем, история ПК лишний раз свидетельствует, что рыночный выбор с техническими достоинствами продукта вообще никак не связан...
SII ну так да, кто ж заморачивается сравнить зубную пасту? все и так знают, что альтернативы колгету нет. так сказал красивый доктор по чистке яиц с ящика. а он голова, он сам так сказал
http://ru.wikipedia.org/wiki/IBM_PC Увы все было совсем не так. Интел уже проектировал 286-й. Кто мешал всяким Zilog делать тоже самое. Ну конечно и повезло, но на 8086 IBM поехал совсем не туда, Билли быстро их кинул с OS/2 и стал "окошки" делать. Кстати теперь я понимаю, что IBM compatible был не из-за лицензий - это был просто маркетинговый ход. И он повторяется всю историю развития персоналок - яркий лейбл на ноунеймах.