Size: a a a

Ассемблер

2019 December 19

A

Aiwan ╭∩╮ (òÓ,) ╭∩╮ in Ассемблер
64651 64651
Ребята подскажите самый быстрый способ как вынуть например в регистр AX текущее значение PC (program counter) - речь идет о микроконтроллерах (risc) . Можно пример с пк CISC
если по аналогии с  CISC это значение регистра rip, то можно так

call @f
@@:
pop eax

ret не нужен, он sp правит
источник

A

Aiwan ╭∩╮ (òÓ,) ╭∩╮ in Ассемблер
Aiwan ╭∩╮ (òÓ,) ╭∩╮
если по аналогии с  CISC это значение регистра rip, то можно так

call @f
@@:
pop eax

ret не нужен, он sp правит
в eax адрес инструкции pop по идее
источник

66

64651 64651 in Ассемблер
В моем случае CAllf идет только на абсолютные адреса
источник

A

Aiwan ╭∩╮ (òÓ,) ╭∩╮ in Ассемблер
Ник
Та я даже больше скажу, чтобы было более понятно: я хочу создать файл(CreateFile) и присвоить ему иконку. Как это осуществить? Если с помощью ресурсов, то сверху я пытался и не вышло
можно извратитьтся, в реестр прописать программу которая открывает определённый тип файлов. типа у файлов txt программу по умолчанию прописать медиаплеер
источник

A

Aiwan ╭∩╮ (òÓ,) ╭∩╮ in Ассемблер
64651 64651
В моем случае CAllf идет только на абсолютные адреса
так тебе ж надо без абсолютных
источник

Н

Ник in Ассемблер
Никита
В ехешнике может быть специально помеченный раздел с тупо вставленым туда файлом типа .ico и система стандартно находит этот раздел и рисует иконку
Именно, неправильно выразился просто
источник

A

Aiwan ╭∩╮ (òÓ,) ╭∩╮ in Ассемблер
а что f означает? случайно не far?
источник

Н

Ник in Ассемблер
Так как это осуществить?
источник

66

64651 64651 in Ассемблер
И Call тоже...
источник

66

64651 64651 in Ассемблер
Aiwan ╭∩╮ (òÓ,) ╭∩╮
так тебе ж надо без абсолютных
Именно..
источник

A

Aiwan ╭∩╮ (òÓ,) ╭∩╮ in Ассемблер
делай метку, ассемблер сам вычисли адрес, тебе ничего не надо считать, никаких адресов, я же в своем примере использовал мнимую метку, вместо неё можно было использовать любую другую разрешенную метку. метки тем и хороши что не надо указывать абсолютные адреса, типа [0647:4642], асм сам все посчитает во время асснмблирования и/или выполнения
источник

A

Aiwan ╭∩╮ (òÓ,) ╭∩╮ in Ассемблер
эт я рассуждаю с колокольни cisc
источник

Н

Никита in Ассемблер
Тогда уж просто
Mov eax,$ это в фасме текущий адрес
источник

A

Aiwan ╭∩╮ (òÓ,) ╭∩╮ in Ассемблер
Никита
Тогда уж просто
Mov eax,$ это в фасме текущий адрес
угу
источник

66

64651 64651 in Ассемблер
Ок, спасибо
источник

A

Aiwan ╭∩╮ (òÓ,) ╭∩╮ in Ассемблер
когда ж фасм для risc запилят?
источник

A

Aiwan ╭∩╮ (òÓ,) ╭∩╮ in Ассемблер
Никита
Тогда уж просто
Mov eax,$ это в фасме текущий адрес
и то если асм поддерживает это. например масм 8 и выше версии не может при ассемблировании считать длину строки, типа lenstr=$-str
источник

AB

Artyom Bukhavtsov in Ассемблер
Привет. Ребята шарит кто-нибудь
источник

AB

Artyom Bukhavtsov in Ассемблер
источник

AB

Artyom Bukhavtsov in Ассемблер
Как здесь У1 исправить?
источник