User Tag List

Страница 3 из 16 ПерваяПервая 1234567 ... ПоследняяПоследняя
Показано с 21 по 30 из 154

Тема: Мнемоники i8080 vs Z80

  1. #21

    Регистрация
    31.03.2013
    Адрес
    г. Киев
    Сообщений
    2,413
    Спасибо Благодарностей отдано 
    132
    Спасибо Благодарностей получено 
    759
    Поблагодарили
    353 сообщений
    Mentioned
    88 Post(s)
    Tagged
    0 Thread(s)

    По умолчанию

    OK, расскажу как я изучаю процессоры, для которых потом приходится писать на ассемблере.
    - берется полный мануал ISA (Instruction Set Architecture)
    - в Word-е составляется полная табличка всех инструкций, упорядоченная по бинарному коду, с разборкой всех полей и их возможных значений, а также зарезервированные опкоды
    - потом эта табличка копируется и автоматически упорядочивается по мнемоникам, получается вторая табличка

    Процесс занимает несколько дней, но в итоге составления такого табличного конспекта в памяти откладывается все - и какие инструкции, и с какими аргументами они могут работать, набор ресурсов архитектуры, флажки и прочее. И потом как-то не возникает вообще вопросов почему нельзя написать типа "mvi D, 258" (применительно к 8080). С этой точки зрения я считаю вариант мнемоник i8080 более полезным, он позволяет легче помнить обо всех этих особенностях архитектуры. Но, не всем такие тонкости нужны, многие просто не обращают на это вниманию, кодят себе, да и усе, без подробностей. Таким людям, наверное, удобнее мнемоники Z80. В-общем, некоторые любят механику, а некоторым коробку-автомат подавай. И те, и те - ездиют

  2. #22
    HardWareMan
    Гость

    По умолчанию

    Vslav, коллега! Вот как я сделал для М68К.

  3. #23

    Регистрация
    31.03.2013
    Адрес
    г. Киев
    Сообщений
    2,413
    Спасибо Благодарностей отдано 
    132
    Спасибо Благодарностей получено 
    759
    Поблагодарили
    353 сообщений
    Mentioned
    88 Post(s)
    Tagged
    0 Thread(s)

    По умолчанию

    Цитата Сообщение от HardWareMan Посмотреть сообщение
    Vslav, коллега!
    Анекдот в тему:

    Представь, что у тебя есть ценная мысль, и ты ее думаешь.
    Дальше представь, что у меня есть ценная мысль и я ее думаю.
    Допустим, мы с тобой поделились друг с другом своими ценными мыслями.
    Внимание, вопрос - сколько у нас с тобой стало ценных мыслей?
    Две? А вот и нет - одна. А почему? Да просто дураки думают всегда одинаково

    PS. Талмуд по 68К хороший, да

  4. #24

    Регистрация
    28.11.2016
    Адрес
    г. Санкт-Петербург
    Сообщений
    9
    Спасибо Благодарностей отдано 
    0
    Спасибо Благодарностей получено 
    1
    Поблагодарили
    1 сообщение
    Mentioned
    0 Post(s)
    Tagged
    0 Thread(s)

    По умолчанию

    Господа, по-моему многие из вас (включая высокопоставленных лиц) откровенно путают котлеты с мухами! Наиболее существенное отличие мнемоник Z80 от 8080 заключается в том, что мнемоники Z80 упорядочены, а 8080 - нет. Упорядочивание заключается в том, что в мнемониках Z80 операция жёстко отделена от операнда, а в мнемониках 8080 всё смешано в одну кучу - и операция, и операнд(ы). В общем случае подмножество команд не однозначно соответствует подмножеству адресаций, а разработчики 8080 попытались "объять необъятное", смешав в одну кучу и команду, и метод(ы) адресации (кстати, сделано это было, как уже справедливо заметили, не в последнюю очередь для упрощения кода самого Ассемблера!). Как это у них получилось (хорошо или плохо) - своего мнения высказывать не буду, но очевидно, что полностью вместить операнд в мнемонику они не сумели или не решились, оставив некоторые операнды в поле операндов. Поэтому вся ваша дискуссия сводится не к религиозной борьбе, а лишь к спору о том, что логичнее: отделять мух от котлет или валить всё в одну кучу, хотя всё равно куч будет две, и во второй будут только мухи. Что в переводе на русский означает отделять ли команду от метода адресации или валить в одну мнемонику и команду, и адресацию, хотя всё равно у половины мнемоник остаётся дополнительное поле для адресации.

    P.S.: Я не знаю, сколько кода я написал в молодости, но третьей по счёту программой, которую я написал не за деньги, а для души, был кросс-ассемблер для Z80 под RT-11 на ДВК, однако написал я его в мнемониках 8080 именно потому, что в таком виде он пишется задней левой ногой без применения мозга.
    Всего доброго.
    Евгений.

  5. #25

    Регистрация
    03.07.2005
    Адрес
    Санкт-Петербург
    Сообщений
    10,168
    Спасибо Благодарностей отдано 
    147
    Спасибо Благодарностей получено 
    84
    Поблагодарили
    55 сообщений
    Mentioned
    1 Post(s)
    Tagged
    0 Thread(s)

    По умолчанию

    Дело не в мухах и котлетах, а просто появилсся лишний повод поболтать о близком и родном, что весьма ценится после информационного спама из телевизора, ИМХО

    - - - Добавлено - - -

    Пошевелив очучениями, наверное соглашусь с SaNchez. Мнемоники и набор команд Z80 действительно заставляет призадуматься о "чуть высшей ступеньке в языке". Подобное же чувство было так же при ковырянии МС68к. Оба процессора очень хороши.
    ScorpEvo ZS 1024 turbo+ CF-HDD/FDD/Mouse/SMUC 3.1/ProfROMse/NeoGS/ZC
    Speccy-2007 128/AY/TR-DOS

    Сайт с документацией к "Scorpion ZS 256"

  6. #26

    Регистрация
    31.03.2013
    Адрес
    г. Киев
    Сообщений
    2,413
    Спасибо Благодарностей отдано 
    132
    Спасибо Благодарностей получено 
    759
    Поблагодарили
    353 сообщений
    Mentioned
    88 Post(s)
    Tagged
    0 Thread(s)

    По умолчанию

    Простой вопрос на засыпку. Берем старый не очень качественно сохранившийся печатный исходник.
    И встречаем там такое:
    Код:
    ld  A, B (или 8, видно на старой журнальной печати плохо)
    ld  A, D (или 0)
    И ломаем голову.
    В варианте 8080:
    Код:
    mvi  A, 8 (читаем однозначно как константу 8)
    mov A, D (читаем однозначно как имя регистра D)
    Вывод - мнемоники 8080 несут БОЛЬШЕ информации об инструкции. Обычно это не имеет особого значения, кому что нравится. Но вот для старых листингов - 8080 годится лучше.

    - - - Добавлено - - -

    Цитата Сообщение от Ewgeny7 Посмотреть сообщение
    действительно заставляет призадуматься о "чуть высшей ступеньке в языке"
    Тогда Си - самый лучший ассемблер
    Последний раз редактировалось Vslav; 29.11.2016 в 16:40.

  7. #27

    Регистрация
    27.04.2015
    Адрес
    г. Пенза
    Сообщений
    500
    Спасибо Благодарностей отдано 
    334
    Спасибо Благодарностей получено 
    90
    Поблагодарили
    59 сообщений
    Mentioned
    0 Post(s)
    Tagged
    0 Thread(s)

    По умолчанию

    Цитата Сообщение от Vslav Посмотреть сообщение
    Тогда Си - самый лучший ассемблер
    Так и есть, Си это высокоуровневый ассемблер с неограниченными возможностями. Пользоваться ассемблером приходится только из-за тупой оптимизации кода компилятором. Если бы придумать идеальный оптимизатор для Си, это был бы единственный ассемблер.
    А вот Си плюс, это уже полноценный язык.

    КР580 самый лучший процессор, свой, отечественный, пусть и немного стыренный.
    wtf

  8. #28
    HardWareMan
    Гость

    По умолчанию

    Цитата Сообщение от Vslav Посмотреть сообщение
    Вывод - мнемоники 8080 несут БОЛЬШЕ информации об инструкции. Обычно это не имеет особого значения, кому что нравится. Но вот для старых листингов - 8080 годится лучше.
    Информация для восстановления же! Такой встроенный ECC. И да, в журналах и всяких распечатках i8080 более устойчив к чтению.

  9. #29

    Регистрация
    03.07.2005
    Адрес
    Санкт-Петербург
    Сообщений
    10,168
    Спасибо Благодарностей отдано 
    147
    Спасибо Благодарностей получено 
    84
    Поблагодарили
    55 сообщений
    Mentioned
    1 Post(s)
    Tagged
    0 Thread(s)

    По умолчанию

    Давайте согласимся, что обычно проблема выглядит несколько иначе...
    В дампе кода, приведенного в журнале, непонятны сами хексы.
    0 или D? B или 8? А вот разночтения текста на ассемблере - таки пореже бывают.
    А вообще, зачем зацикливаться на таких "аварийных" случаях?
    Давайте уж быть оптимистами.

    Цитата Сообщение от cy6 Посмотреть сообщение
    КР580 самый лучший процессор, свой, отечественный, пусть и немного стыренный.
    Вот эти слова - безусловная личная правда. Я, каюсь, сам иногда держу в руке ВМ80А и ухожу куда-то в сказку про то, что могло бы быть, но не случилось...
    Мне этот процессор тоже очень дорог и лампово тёпл.

    - - - Добавлено - - -

    Цитата Сообщение от Vslav Посмотреть сообщение
    Тогда Си - самый лучший ассемблер
    Си настолько же далек от железа, как партия от народа. Это не ассемблер.
    Но Си я пользуюсь для микроконтроллеров. Там уже пофиг на розовые сопли, главное - чтобы работало.
    ScorpEvo ZS 1024 turbo+ CF-HDD/FDD/Mouse/SMUC 3.1/ProfROMse/NeoGS/ZC
    Speccy-2007 128/AY/TR-DOS

    Сайт с документацией к "Scorpion ZS 256"

  10. #30

    Регистрация
    22.05.2011
    Адрес
    г. Дзержинск, Украина
    Сообщений
    6,829
    Спасибо Благодарностей отдано 
    483
    Спасибо Благодарностей получено 
    663
    Поблагодарили
    513 сообщений
    Mentioned
    10 Post(s)
    Tagged
    0 Thread(s)

    По умолчанию

    Цитата Сообщение от Vslav Посмотреть сообщение
    немоники 8080 несут БОЛЬШЕ информации об инструкции
    с таким же успехом они больше замыливают глаза
    больше трудностей в их запоминании
    они совершенно не поддаются последующему расширения набора команд процессора (без появления сотни других без полезных мнемоних)

    и вообще арм наше фсе
    четко видно что сделать с чем именно и куда все это потом деть
    а не то что пишешь по привычке xor a,c а оно те компилит xor a : xor c
    Последний раз редактировалось NEO SPECTRUMAN; 29.11.2016 в 21:44.

Страница 3 из 16 ПерваяПервая 1234567 ... ПоследняяПоследняя

Информация о теме

Пользователи, просматривающие эту тему

Эту тему просматривают: 1 (пользователей: 0 , гостей: 1)

Похожие темы

  1. I8080 TO Z80 SOURCE TRANSLATOR
    от Sergey в разделе Программирование
    Ответов: 33
    Последнее: 25.05.2025, 15:08
  2. Ответов: 72
    Последнее: 08.12.2019, 00:36
  3. Совместимость Z80 и i8080 (580ВМ80)
    от Dmitry Dubrovenko в разделе Для начинающих
    Ответов: 50
    Последнее: 08.05.2016, 09:54
  4. Код эмуляции i8080 на С
    от medvdv в разделе Эмуляторы отечественных компьютеров
    Ответов: 15
    Последнее: 27.03.2015, 03:43
  5. Эмулятор i8080
    от Higgins в разделе Разное
    Ответов: 2
    Последнее: 20.05.2011, 11:43

Ваши права

  • Вы не можете создавать новые темы
  • Вы не можете отвечать в темах
  • Вы не можете прикреплять вложения
  • Вы не можете редактировать свои сообщения
  •