FASM_ARM и адресация

Тема в разделе "WASM.BEGINNERS", создана пользователем assorted, 29 апр 2007.

  1. assorted

    assorted New Member

    Публикаций:
    0
    Регистрация:
    7 авг 2006
    Сообщения:
    227
    Пытаюсь разобраться с адресацией процессора ARM, использую компилятор FasmARM
    насколько я понимаю в нем нет прямой адресации???

    т.е. STR R0, [my_variable] не работает. Или просто компилятор этого не позволяет?


    я реализовал это так:

    locals
    wc WNDCLASS
    endl
    apscall GetModuleHandleW,0
    mov r1, wc.hInstance
    str r0, [r1]

    реально получился такой код

    SUB SP, SP, #0x50 выделяем память в стеке под структуру
    ADD R1, SP, #0x50+var_30
    STR R0, [R1]


    то есть: если использовать в качестве базового регистра SP то нужно чтобы переменная была расположена непременно в стеке (локальная переменная).

    Как же быть если я хочу использовать переменную расположенную, например, в секции данных?