nasm

    2热度

    1回答

    我使用NASM这是我的代码: org 0x7c00 bits 16 section .data zeichen dw 'hello2' section .text mov ax,0x7c00 mov es,ax mov bh,0 mov bp,zeichen mov ah,13h mov bl,00h mov al,1 mov cx,6 mov dh,010h

    1热度

    1回答

    我试图学习程序集,同时试用我卡住的教程中的示例。我正在使用Ubuntu虚拟机编译这个。 这里是代码:执行编译后的输出后 SYS_READ equ 3 SYS_WRITE equ 4 SYS_OPEN equ 5 SYS_CLOSE equ 6 SYS_CREATE equ 8 SYS_EXIT equ 1 section .text global _start _sta

    1热度

    1回答

    我必须写在asm函数,以及i在C原型 void fdct(float *in, float *out, unsigned int n); 其中: in:指针输入数据缓冲器 out:指针outcoming数据缓冲器 n:数据矩阵的数量。 函数不会返回任何内容,但会与输出数据的数组一起使用,并且必须根据结果进行更改。 据我了解,在CDECL栈看起来像: esp: ret esp+4: *in -

    0热度

    1回答

    我试图编译此为Linux拱64,我想: section .text global _start _start: mov edx, len mov ecx, msg mov ebx, 1 mov eax, 4 int 0x80 mov eax, 1 int 0x80 section .data msg d

    -2热度

    1回答

    每次我尝试编译我的NASM,那里是一个“流行”的代码错误(“流行人”在这种情况下),它给了我一个错误。 20: error: invalid combination of opcode and operands 在第20行,我有 pop al 什么问题?

    3热度

    1回答

    我开始学习汇编语言。我在基础层面熟悉它。我想知道,Assembly中有多大的应用程序是组织的,也就是说,我怎样才能将它们分解成模块/包并将它们包含到其他模块中?我特别在谈论NASM。

    -1热度

    1回答

    我学习ASM和现在看到了一个剧本,但我不能编译: section .text global _start ;must be declared for using gcc _start: ;tell linker entry point mov edx, [ebp+input_file] mov eax, [edx+8] movsx ecx,

    0热度

    2回答

    我很困惑,还没有找到明确的答案:我应该将标签命名为“label1”还是带有下划线“_label1”?什么是最流行和最可识别的方式?如果我没有记错的话,我甚至看到一个带有“.label1”的点。 相同的问题去功能:“function1”或“_function1”?

    0热度

    1回答

    我正在创建一个小例程,用lidt指令加载idtr寄存器。 我创造了这个代码 - global load_idt load_idt: mov eax, esp add eax, 4 lidt eax ;<-----------------LINE 9 ret 但是,当我编译这个使用NASM,我得到一个错误 - kernel/kernel_start.a

    -1热度

    1回答

    我看到,使用中断只能以低分辨率绘制。假设我制作的是简单的操作系统,可以在任何分辨率上显示,如4k,1920x1080。我有英特尔x64处理器与英特尔高清显卡和Nvidia卡。我在笔记本电脑上