代码之家  ›  专栏  ›  技术社区  ›  sashaaero

C++ ASM插入与INT命令(复制)一起下降

  •  0
  • sashaaero  · 技术社区  · 7 年前

    16h 中断并从这个代码开始

    int main(){
        char key, shiftKey(2);
        asm ("movb %1, %%al;"
             "int $0x16;"
             "movb %%al, %0;"
        :"=r"(key)
        :"r"(shiftKey)
        :"%al"
        );
        std::cout << int(key);
    }
    

    装配算法为:

    1. 将功能编号(02)传递给 al 登记 movb 2, al
    2. int 16h
    3. 艾尔

    此代码与 Process finished with exit code -1073741819 (0xC0000005) . 所以我不知道我做错了什么。

    0 回复  |  直到 7 年前
    推荐文章