assembly

    1熱度

    4回答

    所以我正在寫一個函數,它接受一個元組作爲參數,併爲它做了一堆東西。這裏是什麼樣子: def swap(self, location): if (location[0] < 0 or location[1] < 0 or location[0] >= self.r or location[1] >= self.c): return False self.

    4熱度

    1回答

    如何使用最近(使用PIC啓用)gcc創建不可重定位符號? 我基本上要具備以下C程序打印NULL: #include <stdio.h> extern int mem_; int main(void) { printf("%p\n", &mem_); return 0; } 我想什麼是一個小的彙編文件: .data .globl mem_ .ty

    -2熱度

    1回答

    所以我有2個寄存器,eax其中容納0xDEADC0DE和ebx其中持有0x1337CA5E。 第一個數字大於第二個數字。但是,在cmp指令:cmp eax, ebx之後SF(符號標誌)已設置。爲什麼? 爲什麼如果結果是肯定的(eax - ebx)?

    -1熱度

    1回答

    經過大約一個小時將我的頭撞在牆上,我決定問你們這件事。我使用KipIrvine的東西編寫了程序集,如果有幫助,我在Windows 10上使用Visual Studio 2015。很明顯,這個調試輸出不應該發生,它應該運行我的程序,而不是隻提供一個大規模的卸載/加載調試菜單嗎?下面是調試輸出的一小部分: 'ohgodpleasework.exe' (Win32): Loaded 'C:\Users\

    -2熱度

    1回答

    我有這個 MOV CX,12345d 現在我要檢查,如果這個號碼的最後3位數字是二進制 感謝

    2熱度

    1回答

    這是我第一次問,所以我要在這裏盡我所能,但是我在彙編任務中遇到了麻煩,在這個彙編任務中我給了一個.cpp文件(下面),並且必須創建一個包含乘法,方形和除法函數的.asm文件。我遇到的問題是Square和Multiply函數完成後,我必須調用PrintResult來顯示答案。對於分區,成功的分隔返回1,不成功的分隔返回0並調用PrintResult顯示失敗消息。我不允許編輯他的.cpp文件,但我不知

    0熱度

    1回答

    我能夠獲得用戶輸入,如我的代碼所示,但我絕望地無法獲得最小的數字。 非常感謝... 下面是對此的說明。 「編寫一個彙編程序,從用戶讀取三個32位有符號整數,確定這三個數中最小的一個並顯示此結果,不要使用循環,提示用戶輸入每個整數。 .data Msg1: .asciiz "Enter the first integer: " Msg2: .asciiz "Enter the second in

    1熱度

    1回答

    我正在學習x64 shellcode關於exploit.courses linux容器和我運行hello world x64 shellcode的問題我寫了。 我正在嘗試將「Hi there」緩衝區直接移動到一個寄存器,因此我不使用.data部分。 section .data ;msg db "Hi there" section .text global _start _start:

    1熱度

    1回答

    我正在使用sign extend將32位變量更改爲64位變量。但是,當我在64位變量上使用邏輯移位時,它會丟失位,就像它仍然是32位一樣。 我希望能夠最終將所有變量從我的原始變量轉換到64位變量的上邊。 (0xFFFFFFFF00000000是我期待的結果) 下面的代碼顯示到展示的8位的移位,其中比特被丟失: str_fmt:.string "\nWord Value: 0x%08x \nWord

    0熱度

    1回答

    由於數據對齊問題,我在使my personal project在真實硬件上工作時遇到問題;由於硬件的工作方式,圖像必須以16位對齊。 我試圖通過「.align僞」指令指定的對準: .text .align 2 .globl _vg_lecturehall .globl _vg_sylvie_giggle .globl _vg_club _vg_lecturehall: .align