att

    2熱度

    1回答

    leal (%eax, %eax)做什麼?這是否因爲它具有parens而在%eax * 2上乘以內容?

    2熱度

    1回答

    leal(%eax,%ecx,4), %edx ,因爲我是從我的計算機系統的書,讀 如果$ EAX包含x值和%ECX含有Y, 那麼上面的方法可以去看場地,X + 4Y投入%EDX。 然後,如果它是 movl(%eax,%ecx,4), %edx ,然後isn`t的同一個與上述利爾表達? 據我所知,萊亞爾創建一個可以參考的,而不是由自己喜歡引用MOVL地址,但 ,當我看到leal(%eax,

    1熱度

    1回答

    例如輸入輸出兩次: input 34 54 expected output: 54 34 output: 54 54 這與音符的代碼! #This is a simple "matematical function" program .section .rodata #read only data section str: .string "Input :\n"

    0熱度

    1回答

    更新:我可以在我的代碼中使用strcpy。 我試圖編寫一個在x86彙編(att語法)中的strdup的實現,將C中的代碼轉換爲Assembly中的代碼。 代碼在C: char* func(int x, char* name){ namestr = (char *) malloc(strlen(name) + 1); strdup(namestr, name); fr

    1熱度

    1回答

    我對程序集完全陌生,在將值分配給我的二維「數組」時遇到了問題。我的陣列是一個名爲screen的.space,並且分配了HEIGHT * WIDTH * 4,所以有足夠的空間。我知道這是因爲在發出下面的命令之前,我循環訪問數組,並將所有值設置爲0,並通過打印出所有值來驗證它。)下面的命令只包含0值(我知道這是因爲在發出以下命令之前,我循環遍歷數組並將所有值設置爲0,並通過打印出所有值進行驗證)。 這

    8熱度

    1回答

    以下語句有什麼區別? mov %eax,%esp mov %eax,(%esp) 我正在擴散二進制炸彈時遇到與裝配幾個mov和leal命令的早期故障。

    4熱度

    1回答

    如果我的命令行的人說: jmp *0x804a180(,%eax,4) 是什麼意思呢?我特別要問,因爲在第一個逗號之前沒有任何價值,我不確定地址的含義。

    0熱度

    1回答

    我想製作一個小型的IA32遊戲(AT & T),我現在面臨的問題是我不知道如何/在哪裏存儲蛇體和「蘋果「能夠檢查碰撞。 蛇的大小不斷增加,所以容器應該動態分配? 在高級語言中,我會使用2d矢量/數組/鏈表或類似的存儲座標,然後在移動後進行比較。 歡迎任何建議。 (看着類似的問題,但沒有得到我的問題回答)

    1熱度

    1回答

    我有一個非常專業的文件,用x86編寫,Linux下編譯,在GCC下編譯。我需要將該代碼移到Visual Studio項目中,並且mll64.exe需要程序集文件採用英特爾格式。 我試圖建立一個跨平臺的DLL,但它不工作: 十五時47分19秒cpudiag2>的gcc -o -shared my.dll my.o /usr/bin/ld:my.o:重新定位R_X86_64_32S在製作共享對象時不能

    3熱度

    2回答

    我目前正在嘗試通過分析簡單的C代碼片段來學習彙編語言(以及不同的編譯器選項的影響)。現在我stumpled遇到下列指令: mov %edx,-0x80(%rbp,%rax,4) 我不明白的是對目標地址-0x80(%rbp,%rax,4)表達。 該指令爲循環中的本地數組賦值。