как перемещать данные с одного адреса в памяти на другой адрес в памяти (сборка) [дубликат]

Используйте функцию callback() внутри успеха foo(). Попробуйте таким образом. Это просто и легко понять. & nbsp;

var lat = "";
var lon = "";
function callback(data) {
    lat = data.lat;
    lon = data.lon;
}
function getLoc() {
    var url = "http://ip-api.com/json"
    $.getJSON(url, function(data) {
        callback(data);
    });
}

getLoc();
-1
задан Jonathon Reinhart 31 December 2014 в 08:09
поделиться

1 ответ

CMP [BX], 12ADH

Это действительно неверная инструкция, так как вы не указали размер первого операнда. Предполагая, что вы намерены сравнить WORD (16 бит), например:

CMP WORD [BX], 12ADH

Это сначала извлечет 16-битное WORD из памяти по адресу, указанному в регистре BX. Затем он сравнивает это значение с непосредственным значением 12ADh.

Обратите внимание, что CMP выполняет ту же функцию, что и SUB, но без фактического изменения любых значений. Он только «притворяется» для выполнения вычитания и соответственно устанавливает FLAGS.


MOV EBX, [BX]

Это приведет к извлечению 32-разрядного DWORD из памяти по адресу, указанному в регистре BX. Затем он сохранит это значение в регистре EBX.


В выражении типа WORD [BX] можно сказать, что BX "указывает на" 16-битное WORD в памяти:

         Memory             Register File
           ...
        _________             ________
 100h  |  1234h  |     /---- |  102h  | BX
       |_________|     |     |________|
 102h  |  5678h  | <---/        ...
       |_________|
 104h  |  9ABCh  |
       |_________|
 106h  |  DEF0h  |
       |_________|
           ...
3
ответ дан Jonathon Reinhart 26 August 2018 в 22:49
поделиться
Другие вопросы по тегам:

Похожие вопросы: