nasm

    1熱度

    1回答

    我一直在使用教程點指南學習NASM程序集,但是在嘗試編寫將兩個用戶輸入的數字相乘的代碼時遇到了一些問題。我遇到了錯誤,我認爲這也可能是一個不完全理解程序集體系結構如何處理寄存器,堆棧和數據段的問題。如果我能得到幫助,首先要了解是什麼導致了我的代碼中的錯誤,然後找到了更好地掌握nasm彙編的資源,我將非常感激。 這裏是我的代碼: write equ 4 read equ 3 st

    1熱度

    1回答

    我想解決我得到的練習。任務是從終端讀取10個整數並以相反的順序打印出來。要做到這一點,應該使用堆棧。我已經試過這樣: %include "asm_io.inc" segment .data prompt db "Please enter a number: ", 0 segment .text global asm_main asm_main: enter 0,

    1熱度

    2回答

    所以我開始寫一個「內核」這樣說,我正在嘗試讀取一個字符串並將其打印回我。問題出現在我執行它時,它只是打印3個相同的字符,而不是我在線上寫的內容。 read_string: call newline mov si, read_attempt call print call newline push bx mov ah, 0x03

    3熱度

    1回答

    我正在使用Intel x64程序集NASM編譯器,試圖將「0x4000000000000000」常量移動到內存中,ieee 754標準中的double值應該等於2.0。 我正在使用的代碼是: %define two 0x4000000000000000 section .text foo: push rbp mov rbp, rsp mov QWORD [rdi], two

    -2熱度

    1回答

    您好我正在使用Mac上的終端。 我做了'vim hello_worldd.asm',它爲我編寫我的代碼創造了一個地方。 但我不知道如何退出並運行它。 有沒有這樣的命令?

    1熱度

    2回答

    我正在用匯編程序存在: xor eax, eax ; make eax equal to 0 push eax ; pushes null push 0x68732f2f ; pushes /sh (//) push 0x6e69622f ; pushes /bin mov ebx, esp ; passes the first argument push eax ; e

    0熱度

    1回答

    表達的意思是: times 512-($-$$) db 0 我知道什麼是美元符號的手段,但我不知道這意味着什麼時,它的兩倍。 雙美元符號是什麼意思?

    0熱度

    1回答

    安裝NASM的特定版本我NASM適用於MacOS從 http://www.nasm.us/pub/nasm/releasebuilds/2.11.06/macosx/ 如何做我安裝NASM的這個特定的版本? 我知道我可以做brew install nasm。但我不想要最新版本。我想爲MacOS安裝NASM 2.11.06。 我應該如何安裝我已經下載的nasm-2.11.06-macosx.zip?

    1熱度

    1回答

    我正在試圖在此處提取的教程中提供一個簡單的「用提示創建文件」代碼Assembly - File Management。但每次輸入內容時,終端中的輸出字符串都會混合在一起並剪切。而且要創建的文件也是混合的。 代碼是在這裏: section .data Msg1: db 'Masukkan nama Anda ',0xa Msg1ln equ $-Msg1 Name: db ' ', 0xa

    2熱度

    1回答

    我嘗試添加幾個像素在一起,以便做羅嗦濾波器NASM。我已經設法添加三個像素,其值爲00 + d3 + d8(0 + 211 + 216)。當我嘗試添加一個像素,值爲0時,程序無法打印變量blurr的值。 更新: 似乎增加了可變總和產品可在完成三次,因爲如果我註釋掉另一個add,該值將在我的輸出文件打印。 blurrTopRow: ;from 0 - 251 there will be n