assembly

    3熱度

    2回答

    我追逐從編譯器在每次調用新的後添加的代碼的一部分中拋出的異常。這是標準的C++ 新的,它應該從堆中獲取一些內存並調用該類的構造函數。 我們在SH4處理器上運行Gx 2.95(或2.96不確定)的VxWorks 5.5.1。編譯在SNiFF + 4.1補丁1中。 C++代碼如下所示。 CBlocksFile* pBlockFile = new CBlocksFile(szHeaderFile, sz

    6熱度

    1回答

    我有一個小小的8086模擬器,而且我已經有了一個長達2年的長期存在的bug,現在AF在子內部沒有正確表現並添加指令。 我計算它的價值目前的方式是這樣的8位數字和加減: uint8_t base=... , subt=... base=base&0xF; subt=subt&0xF; //isolate bottom nibble if((int16_t)base-subt>7 || (int

    0熱度

    2回答

    我知道這很難相信,但我對此100%認真對待。 當我在運行Windows XP Professional 32位SP3的MacBook Pro(Core 2 Duo P8600)上以發行模式編譯下面的代碼時,運行可執行文件,儘快printf命中因爲我觸摸觸摸板(不是玩笑) - 這絕對不會發生。 我上傳了一個包項目文件的Visual Studio,包括彙編清單和自述文件包括附加信息: www.pedr

    0熱度

    1回答

    這是我在VC++項目中插入的一個簡單的asm代碼。 return_addr是堆棧幀的返回地址。我有一個StackWalk函數(不是我寫的codeproject.com/KB/threads/StackWalker.aspx),它使用StackWalk64()來提取幀。這個細節不相關。使用返回地址,我從當前正在檢查的堆棧中的函數代碼中提取一個字節。 __asm{ push eax

    2熱度

    2回答

    我試圖將32位浮點數轉換爲擴展精度80位浮點數。 我正在使用MSVC x86。我試着下面的內聯彙編代碼: void Convert32To80(float *value, void *outValue) { __asm { fld float ptr [value]; fstp tbyte ptr [outValue]; } } 這裏,

    3熱度

    1回答

    我在網上搜索的東西,以幫助我做裝配線分析。我搜索了一下http://www.webservertalk.com/message897404.html 這個問題有兩個部分;查找特定類型的所有指令(inc,add,shl等)以確定分組,然後確定哪些正在執行並求和正確。除非通過反彙編程序進行分組是足夠的,否則第一個比較棘手。爲了弄清哪些指令正在執行,Dtrace當然是你的朋友(至少在用戶區)。 這樣做最

    0熱度

    2回答

    大家好 我真的需要x-o或tic tac腳趾程序的源代碼在808186 任何機構都可以幫助我如何找到類似的東西?

    2熱度

    1回答

    最終,我只是想弄清楚如何從程序集內動態分配堆內存。 如果我從彙編代碼調用Linux sbrk(),是否可以使用返回的地址,因爲我會使用一個靜態地址(即,在我的程序列表的.data節中)聲明的內存塊? 我知道Linux使用硬件MMU(如果存在的話),所以我不確定sbrk返回是否是指向真實RAM的「原始」指針,還是指向可能被Linux VM系統修改的RAM的指針? 我看過這個:How are sbrk

    26熱度

    2回答

    我正在尋找x86 Assembly中的pow(real, real)的實現。另外我想了解算法的工作原理。

    0熱度

    2回答

    我想通過編寫「Hello World」到控制檯(使用Windows XP 32位)來測試緩衝區溢出。 shellcode需要是無空的,以便通過「scanf」傳遞到我想溢出的程序中。我發現很多Linux的彙編教程,但是沒有一個適用於Windows。有人可以請我通過這個使用NASM? Thxxx!