Используя 'db', 'dw' в ассемблере MVC ++ добавляет - PullRequest
1 голос
/ 24 января 2011

Что я должен использовать вместо

__asm
{
    db 0EAh
    dw 0000h
    dw 0FFFFh
}

(http://msdn.microsoft.com/en-us/library/h70hd396.aspx)
в MVC ++?

Ответы [ 2 ]

1 голос
/ 24 января 2011
 _asm {
      mov ax, 40h 
      mov ds, ax 
      mov word ptr ds:[72h], 1234h
      jmp dword ptr cs:0ffff0000h
    }

Благодаря комментарию @ gusbro я наконец понял, что вы пытаетесь сделать.Я не уверен, что это сработает, так как у меня нет машины с Windows, чтобы проверить это, но вы должны попробовать.

warm - дальний вызов FFFF: 0000h с 40: 72h, установленным на 1234h

cold - дальний вызов FFFF: 0000h с 40: 72h, установленным на 0

0 голосов
/ 24 января 2011

Вы можете генерировать коды операций с помощью этой встроенной функции : __emit (int opcode)

Возможно, вы сможете выполнить свой код, последовательно испуская коды операций. Тем не менее, я не думаю, что вам удастся перезагрузить вашу машину таким образом ...

...