Я пытаюсь понять двойные указатели в ASM (в частности, x86-64 NASM), но не могу понять это.
Я реализую связанный список в ASM (из C) иЯ хочу повторить, используя двойные указатели ... но я не могу понять, как это будет работать.Например, как следующий код будет переведен в ASM?
node** pAux = &(list->first);
node* aux = *(pAux);
Я сделал это, но, похоже, это неправильно:
lea r15, [r12 + offset_first] ; r15 = &(list->first)
mov rbx, [r15] ; rbx = *pAux
Затем мне нужно обновить значения указателей,как:
pAux = &(aux->next);
aux = *pAux;
Но я не уверен, как это сделать.
Спасибо!