User Tag List

Страница 2 из 9 ПерваяПервая 123456 ... ПоследняяПоследняя
Показано с 11 по 20 из 88

Тема: Программирование в машинных кодах

  1. #11

    Регистрация
    27.02.2005
    Адрес
    москва
    Сообщений
    14,289
    Записей в дневнике
    1
    Спасибо Благодарностей отдано 
    202
    Спасибо Благодарностей получено 
    1,456
    Поблагодарили
    946 сообщений
    Mentioned
    18 Post(s)
    Tagged
    0 Thread(s)

    По умолчанию

    а как так получается что размещая программу с #0000 делаем вызов на #F809 ?
    (смущает общий объём памяти)

  2. #12

    Регистрация
    23.10.2012
    Адрес
    г. Красноярск
    Сообщений
    206
    Спасибо Благодарностей отдано 
    47
    Спасибо Благодарностей получено 
    63
    Поблагодарили
    29 сообщений
    Mentioned
    1 Post(s)
    Tagged
    0 Thread(s)

    По умолчанию

    Цитата Сообщение от goodboy Посмотреть сообщение
    а как так получается что размещая программу с #0000 делаем вызов на #F809 ?
    (смущает общий объём памяти)
    Ну так у 86РК (как и у специалиста вроде) монитор с адреса $F800 по моему. В любом случае руководствовался этой таблицей http://www.emuverse.ru/wiki/%D0%A4%D...-Tables-01.png

  3. #13

    Регистрация
    07.08.2008
    Адрес
    г. Уфа
    Сообщений
    8,391
    Спасибо Благодарностей отдано 
    763
    Спасибо Благодарностей получено 
    2,367
    Поблагодарили
    1,317 сообщений
    Mentioned
    38 Post(s)
    Tagged
    0 Thread(s)

    По умолчанию

    Цитата Сообщение от Vital72 Посмотреть сообщение
    в Мониторе РК-шки также в стек кладется адрес теплого старта F86C
    Скриншот из отладчика после старта РК, когда монитор ждет нажатия клавиши и крутится в цикле FE63-FE67. Где здесь на стеке F86C?
    Цитата Сообщение от Vital72 Посмотреть сообщение
    директива G может и портит стек
    При выполнении G значение SP берется по адресам 761C-761D. По умолчанию монитор заносит туда 76СF. А по адресам 76CF-76D0 монитор записывает нули. Т.е. если не принять специальных мер, то выход после G0 по RET вернется в 0 и будет дальше разматывать стек в направлении видеопамяти.
    Цитата Сообщение от Zidane Посмотреть сообщение
    как и у специалиста вроде
    у специалиста не так

  4. #14

    Регистрация
    12.11.2009
    Адрес
    Москва
    Сообщений
    403
    Спасибо Благодарностей отдано 
    50
    Спасибо Благодарностей получено 
    90
    Поблагодарили
    66 сообщений
    Mentioned
    2 Post(s)
    Tagged
    0 Thread(s)

    По умолчанию

    Цитата Сообщение от ivagor Посмотреть сообщение
    … Т.е. если не принять специальных мер …
    Всё верно. Спецмерой в данном случае могут быть две команды dcx sp в виде первых двух строк программы. Тогда указатель стека сместится и на верхушке будет лежать правильный адрес возврата F86C.

    3B 3B 0Е 21 CD 09 F8 C9 - вот такой код работает корректно.
    Последний раз редактировалось SegaBoy; 29.08.2022 в 15:23.

  5. #15

    Регистрация
    23.10.2012
    Адрес
    г. Красноярск
    Сообщений
    206
    Спасибо Благодарностей отдано 
    47
    Спасибо Благодарностей получено 
    63
    Поблагодарили
    29 сообщений
    Mentioned
    1 Post(s)
    Tagged
    0 Thread(s)

    По умолчанию

    Спасибо за информацию. А есть ли адекватная литература по 86РК? То есть не урывочные публикации а что-то из серии МРБ? А то по журналам Радио искать такое себе. Сейчас просто Вектору готовлюсь, но потом можно и РК, если найдется толковый источник информации. Потому что я так понял по 86РК было достаточно большое семейство. Как минимум Микроша и Апогей (поправьте если ошибаюсь). Просто изучать что-то только для одного выпуска не хочется от слова совсем. Если уж рассказывать, так разобраться надо. И тут Вектор и Специалист явно впереди.

  6. #16

    Регистрация
    27.02.2005
    Адрес
    москва
    Сообщений
    14,289
    Записей в дневнике
    1
    Спасибо Благодарностей отдано 
    202
    Спасибо Благодарностей получено 
    1,456
    Поблагодарили
    946 сообщений
    Mentioned
    18 Post(s)
    Tagged
    0 Thread(s)

    По умолчанию

    Цитата Сообщение от SegaBoy Посмотреть сообщение
    3B 3B 0Е 21 CD 09 F8 C9 - вот такой код работает корректно
    можно и сократить 3B 3B 0Е 21 С3 09 F8
    .................
    можно сократить и ещё на один байт - сделать вначале pop reg
    Последний раз редактировалось goodboy; 29.08.2022 в 16:59.

  7. #16
    С любовью к вам, Yandex.Direct
    Размещение рекламы на форуме способствует его дальнейшему развитию

  8. #17

    Регистрация
    01.06.2005
    Адрес
    Москва
    Сообщений
    229
    Спасибо Благодарностей отдано 
    3
    Спасибо Благодарностей получено 
    53
    Поблагодарили
    34 сообщений
    Mentioned
    0 Post(s)
    Tagged
    0 Thread(s)

    По умолчанию

    Цитата Сообщение от Zidane Посмотреть сообщение
    А есть ли адекватная литература по 86РК? То есть не урывочные публикации а что-то из серии МРБ?
    Домашний компьютер/Зеленко Г. В., Панов В. В.,. Попов С. Н.- М.: Радио и связь, 1989.-144 с.: ил.-. (Массовая радиобиблиотека; Вып. 1139).

    Прям первая ссылка в гугле.

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

    Цитата Сообщение от ivagor Посмотреть сообщение
    Скриншот из отладчика после старта РК, когда монитор ждет нажатия клавиши и крутится в цикле FE63-FE67. Где здесь на стеке F86C?
    Вот кусочек кода Монитора, код заканчивается как раз помещением F86C в стек:

    Код:
    F86C:	31 CF 76	LBL3:	LXI	SP,76CFH	; 30415; [4]
    F86F:	21 66 FF		LXI	H,REF4		; 65382
    F872:	CD 22 F9		CALL	SUB2
    F875:	32 02 80		STA	V_8002
    F878:	3D			DCR	A
    F879:	32 02 A0		STA	V_A001+1
    F87C:	CD EE F8		CALL	SUB1
    F87F:	21 6C F8		LXI	H,LBL3		; 63596
    F882:	E5			PUSH	H

  9. #18

    Регистрация
    07.08.2008
    Адрес
    г. Уфа
    Сообщений
    8,391
    Спасибо Благодарностей отдано 
    763
    Спасибо Благодарностей получено 
    2,367
    Поблагодарили
    1,317 сообщений
    Mentioned
    38 Post(s)
    Tagged
    0 Thread(s)

    По умолчанию

    Цитата Сообщение от Vital72 Посмотреть сообщение
    Вот кусочек кода Монитора, код заканчивается как раз помещением F86C в стек:
    Стоило уточнить, когда он выполняется. Не просто
    Цитата Сообщение от Vital72 Посмотреть сообщение
    в Мониторе РК-шки также в стек кладется адрес теплого старта F86C
    а при нажатии ВК. И в команде G после этого выполняются действия, которые делают следующее утверждение неправильным (без принятия дополнительных мер)
    Цитата Сообщение от Vital72 Посмотреть сообщение
    возврат из программы командой RET является легальным способом завершения программы.

  10. #19

    Регистрация
    12.11.2009
    Адрес
    Москва
    Сообщений
    403
    Спасибо Благодарностей отдано 
    50
    Спасибо Благодарностей получено 
    90
    Поблагодарили
    66 сообщений
    Mentioned
    2 Post(s)
    Tagged
    0 Thread(s)

    По умолчанию

    Цитата Сообщение от goodboy Посмотреть сообщение
    можно сократить и ещё на один байт - сделать вначале pop reg
    Не выйдет, нам в другую сторону. Pop это аналог двух inx, что ещё дальше отодвинет нужный адрес.

  11. #20

    Регистрация
    27.02.2005
    Адрес
    москва
    Сообщений
    14,289
    Записей в дневнике
    1
    Спасибо Благодарностей отдано 
    202
    Спасибо Благодарностей получено 
    1,456
    Поблагодарили
    946 сообщений
    Mentioned
    18 Post(s)
    Tagged
    0 Thread(s)

    По умолчанию

    точно, ступил.

Страница 2 из 9 ПерваяПервая 123456 ... ПоследняяПоследняя

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

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

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

Похожие темы

  1. Ответов: 18
    Последнее: 09.12.2018, 12:32
  2. Растактовка машинных циклов intel 8080
    от NEO SPECTRUMAN в разделе Эмуляторы отечественных компьютеров
    Ответов: 2
    Последнее: 06.04.2017, 17:09
  3. Ответов: 10
    Последнее: 06.03.2015, 12:59
  4. Ответов: 4
    Последнее: 26.07.2014, 16:52
  5. Клинит башню от машинных систем счисления
    от Watt в разделе Программирование
    Ответов: 17
    Последнее: 04.05.2005, 14:40

Ваши права

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