assembly

    1熱度

    3回答

    我想知道是否有更有效的方法來查找程序集中的子串,然後我正在計劃做什麼。 我知道字符串指令「scansb/scasw/scads」可以將EAX中的值與EDI中的值進行比較。不過,據我所知,我只能使用這種方法搜索一個角色。因此,如果我想在字符串「pleasehelpme」中找到「幫助」的位置,我可以使用scansb找到h的偏移量,然後跳轉到另一個函數,在此處我比較餘數。如果餘數不正確,我跳回到scan

    2熱度

    1回答

    這與操作系統引導裝載程序是一樣的。我有一個C源代碼和彙編源代碼。我想彙編代碼將控制權交給C應用程序。我正在使用Linux並使用GCC + NASM進行編譯。我需要以特殊方式編譯它們嗎?用於加載c應用程序並啓動它的彙編代碼是什麼?

    1熱度

    2回答

    爲了完成一個彙編程序項目,我們需要對輸入字符串進行加密,傳輸和解密,我在其中一個類中使用了C和ASM {}。 該鍵被加載到一個空的C字符數組中(20個字符長),然後稍後用XOR語句進行加密。 的代碼來加載陣列的地址是: LEA ESI,鍵 這使 '關鍵' 的地址放入ESI。當我們在調試模式下檢查寄存器時,這裏的地址與關鍵數組的地址相同,所以我們知道這是有效的。 MOV EDX,[ESI] ,我們認

    1熱度

    3回答

    我的工作在8086 DOS總裝項目,使用視頻模式我能畫一些線條和東西,但現在我想打印一些字符和發現(interrupt 10,2)使用字符(行,列)座標比視頻模式爲不同的座標 什麼是最優雅的方式這兩個座標之間進行映射? 或者有更好的方式在視頻模式下打印字符? 目前我知道的是,我可以手動進行映射,但是,因爲在8086沒有浮點運算也不會是準確的...

    3熱度

    2回答

    所以我拿起了程序集編程。這在我的Ubuntu盒子裏很簡單:使用NASMamd GNU ld,我能夠在半小時內編寫更多或更少複雜的HelloWorld風格的程序。 但是,當談到iPhone時,它非常複雜。首先,我在4.2.1固件上安裝JB'en iPhone 3G,這意味着我使用Darwin內核v10的A​​RM端口。其次。我必須使用GNU,因爲iPhone上沒有NASM:本地工具鏈(Mac OS

    1熱度

    3回答

    我想知道是否有一個例程或指令生成一個隨機數使用匯編 在8086. 任何幫助將不勝感激。

    0熱度

    1回答

    我想在Windows命令提示符中使用DEBUG乘以5個小數,但我擔心我已經很遙遠。我的程序導致十進制值1303當它應該是4320的小數位是15,12,4,2,3 mov al, 15 mov bl, 12 mov bh, 4 mov cl, 2 mov ch, 3 mul ax, bl mul ax, bh mul ax, cl mul ax, ch aam

    2熱度

    2回答

    我指的文章在http://www.wintoolzone.com/articles/AuthoringStackWalkerForX86.pdf 我使用VC++ 2008年。我意識到,當我把優化「最大速度(/ O2)」,連我設置將「忽略幀指針」顯式指定爲否,獲取函數返回地址將無法通過堆棧幀指針正確工作。 在文章中,它提到: 「要求堆棧幀指針是 存在於所產生的碼 優化代碼,其中堆棧幀 指針不存在將不

    0熱度

    1回答

    我一直使用Google搜索了很長時間,但仍然找不到解決方案。我希望有人能幫助我。 我有如下三個一字排列的ASM功能: static __inline__ int Bsf(uint32_t Operand) { int eax; asm __volatile__ ( "bsfl %0, %0" "\n\t" : "=a" (eax) : "0" (Op

    4熱度

    2回答

    我一直在研究Lua 5.1 VM操作碼,現在已經無聊了。 我想嘗試編碼的東西! 那麼是否有任何現有的方式將Lua程序集組裝成字節碼?