Форум программистов, компьютерный форум, киберфорум
Микропроцессоры
Войти
Регистрация
Восстановить пароль
Другие темы раздела
Микропроцессоры Разработка устройств под управлением Intel 8086 https://www.cyberforum.ru/ microprocessors/ thread2597486.html
Приветствую. Хочу попробовать начать программировать под 8086 микропроцессор. А именно, хотелось бы использовать какой нибудь дисплей для вывода информации и клавиатуру для взаимодействия с ним....
Микропроцессоры Структурная схема ЦП. Алгоритм выполнения двухадресной операции
Срочно нужна помощь. Есть структурная схема простейшего процессора и алгоритм двухадресной операции. Нужно показать работу алгоритма на схемe. Help!
Составить схему управления светофорными индикаторами Микропроцессоры
3 номер в фото правила п 5.18 Запрещено размещать задания и решения в виде картинок и других файлов с их текстом.
Микропроцессоры Уточнение по поводу CISC и RISC архитектур Здравствуйте! Мне нужно точно понять, правильно ли я всё в своей голове представляю, надеюсь вы мне с этим поможете) Речь о CISC и RISC архитектурах. CISC архитектура, в моём представлении, даёт... https://www.cyberforum.ru/ microprocessors/ thread2564257.html
Микропроцессоры Найти данные треугольника, исходя из условий https://www.cyberforum.ru/ microprocessors/ thread2553917.html
Здравствуйте, необходимо написать функцию для excel по задаче: Даны три стороны a, b, c, удовлетворяющие аксиомам треугольника. Если треугольник равносторонний, то найти его площадь. Если...
Доработка дизассемблера 8080A Микропроцессоры
Доработка дизассемблера для Intel i8080A(КР580ВМ80А) c https://codeload.github.com/Balajanovski/8080-disassembler/zip/master введен режим сохранения в файл и опция отображения байтов данных в...
Микропроцессоры Утилита загрузки компьютера Роботрон 1715 через RS-232
У кого есть утилита загрузки компьютера Роботрон 1715 через RS-232 с образов .cpm -дискет с компьютера с Windows (для создания дискет на компьютере Роботрон 1715, где размагнитились загрузочные...
Микропроцессоры (МТ1804) Найти сумму максимальных чисел из попарно рассматриваемых регистров Найти сумму максимальных чисел из попарно рассматриваемых регистров R0,R1 и R2,R3; результат поместить в R6. п/п: определение максимального из двух чисел Ri и Ri+1. Помогите пожалуйста решить две... https://www.cyberforum.ru/ microprocessors/ thread2548841.html
Микропроцессоры (МТ1804) Найти дополнительный код содержимого регистра https://www.cyberforum.ru/ microprocessors/ thread2548831.html
Найти дополнительный код содержимого регистра R5 и поместить его в R0, путем суммирования R5 с “1” до тех пор, пока не появится переполнение. Помогите пожалуйста решить. Тут нужно использовать...
Микропроцессоры Описание схемы Кто может помочь разобраться со схемой https://www.cyberforum.ru/ microprocessors/ thread2545961.html
4 / 4 / 3
Регистрация: 13.07.2014
Сообщений: 129
0

6502 ассемблер, директива .org

29.03.2020, 14:11. Просмотров 982. Ответов 2
Метки (Все метки)

Всех приветствую. Не уверен, что пишу в нужную ветку, но всё же.
Возникла идея написания собственного транслятора ассемблера для NES для ines формата. В процессе написания осознал, что не совсем понимаю, как действует директива .org
В документации к компилятору NESASM сказано:
.org
Set the location of the program counter.
В таком случае, после .org транслятор должен начинать писать инструкции с заданного адреса. Рассмотрим такой код:
Assembler
1
2
3
4
5
6
7
  .bank 0
  .org $0010
 
LABEL:
    LDA #$FF
    STA $CC
    JMP LABEL
Результат в hex-редакторе:
00000000 4E 45 53 1A 01 01 01 00 00 00 00 00 00 00 00 00
00000010 FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF
00000020 A9 FF 8D CC 00 4C 10 00 FF FF FF FF FF FF FF FF
Меняем .org $0010 на .org $C000:
00000000 4E 45 53 1A 01 01 01 00 00 00 00 00 00 00 00 00
00000010 A9 FF 8D CC 00 4C 00 C0 FF FF FF FF FF FF FF FF
Т.е в первом случае, транслятор начал запись с $0010, а во втором с $0000 вместо $C000, но при этом адрес метки поменялся на $C000.
Разъясните, пожалуйста, что происходит и как это работает

Вернуться к обсуждению:
6502 ассемблер, директива .org
0
Лучшие ответы (1)
Programming
Эксперт
94731 / 64177 / 26122
Регистрация: 12.04.2006
Сообщений: 116,782
29.03.2020, 14:11
Готовые ответы и решения:

Директива org
Объясните что значит org 1000h (FASM) если программа будет загружена по адресу 2000h:0000h 1)...

Директива ORG в FASM
Попробовал этот замечательный ассемблер и сразу напоролся на непонятное. Директива ORG работает...

Директива SET (ассемблер)
Помогите пожалуйста разобраться! Читаю по мануалам, вроде как можно переназначать значения...

IP4600 ошибка 6502 Ink tank position sensor error
Всем привет! Вот такая проблема принесли в ремонт Canon IP4600 сказали ошибка 6а80 при включении...

2
КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin® Version 3.8.9
Copyright ©2000 - 2020, vBulletin Solutions, Inc.