【linux – 将字符与Intel x86_64程序集进行比较】教程文章相关的互联网学习教程文章

mac / linux dotnet build找不到框架“ .NETFramework ..”的参考程序集【代码】

尝试构建针对net47而不是.netcore或.net std的Microsoft.NET.Sdk样式项目时. dotnet版本将给出有关缺少定位包的错误. msbuild可以代替,但是我更喜欢使用dotnet构建.有办法吗/usr/local/share/dotnet/sdk/2.1.200/Microsoft.Common.CurrentVersion.targets (1179,5): error MSB3644: The reference assemblies for framework ".NETFramework,Version=v4.7" were not found. To resolve this, install theSDK or Targeting Pack for...

linux-有关程序集/ C中变量的内存管理的一般问题

首先:我知道有很多网页(包括有关stackoverflow的讨论)都在讨论.bss和.data之间用于数据声明的区别,但是我有一个特定的问题,但是我没有找到答案这些页面很不幸,所以我在这里问:-). 我是汇编界的初学者,所以如果问题很愚蠢,我深表歉意:-). 我正在x64 64位linux操作系统上学习汇编语言(但我认为我的问题更笼统,可能不特定于os / arcthitecture). 我发现.bss和.data节的定义有些奇怪.我总是可以在.bss中声明一个变量,然后在我的代码(....

linux – 如何在程序集NASM中打印数字?【代码】

假设我在寄存器中有一个整数,我该如何打印?你能展示一个简单的示例代码吗? 我已经知道如何打印一个字符串,如“你好,世界”. 我正在Linux上开发.解决方法:如果您已经在Linux上,则无需自行进行转换.只需使用printf:; ; assemble and link with: ; nasm -f elf printf-test.asm && gcc -m32 -o printf-test printf-test.o ; section .text global main extern printfmain:mov eax, 0xDEADBEEFpush eaxpush messagecall printfadd e...

linux – 这个程序集如何不崩溃?【代码】

我这里有这个linux nasm代码,不会崩溃.使用printString结尾的ret 80指令不应该这个程序崩溃?bits 32section .datahello: db 'Hello Linux assembly!!!!!!!!!!!!!!!!!!!',10,0 helloLen: equ $-hello anotherString db "hello im another string!!!!",10,0anotherStringlen equ $-anotherStringsection .textglobal _start_start:push hellopush helloLencall printString;;;; should i pop the two paramters I pushed? ...

linux – 用gcc编译和运行程序集的最小例子?【代码】

int main(int argc, char* argv[]) {return 0; }什么是最短的汇编示例,可以通过gcc编译成可执行文件? 我遇到了this example,但有太多的标签,比如hi_temp:,.data等,最小版本是什么?解决方法: .text.align 4.globl main main:pushl %ebpmovl %esp,%ebpxorl %eax,%eaxleaveret编译并运行:$gcc -m32 asm.S $./a.out

将Linux x86-64程序集hello world程序与ld链接失败【代码】

我最近在linux上玩x86 64位汇编,在编译了一个看似简单的程序之后,我一直在摸不着头脑:P 虽然我编译和链接它不会抛出任何错误并产生一个Linux ELF当我尝试运行它时,我得到:.:[ h4unt3r@sp3ctr4l-h0st asm ]:. #(0)> ./hello bash: ./hello: No such file or directory我假设它生成一个无效的ELF文件,这就是为什么它报告你好,即使它是IS.不知道为什么 – 我可能会继续玩它,只是好奇这是否可以通过简单的方法解决^ _ ^ 这是我的编译...

linux – 需要了解基本程序集的指导【代码】

我已经涉足到了解如何在汇编中进行一些简单的编程.我正在阅读一个教程hello world程序,他们解释的大部分内容都很有意义,但是他们真的很喜欢它.我想帮助理解程序的某些不同部分.这是他们的教程示例 – section .textglobal main ;must be declared for linker (ld) main: ;tells linker entry pointmov edx,len ;message lengthmov ecx,msg ;message to writemov ebx,1 ;file descriptor (stdout)m...

linux – 将字符与Intel x86_64程序集进行比较【代码】

我是汇编(Intel x86_64)的新手,我正在尝试从C库中重新编写一些函数.我在64位Linux上并使用NASM进行编译. 我的strchr函数有错误,我找不到解决方案…… 这里提醒一下strchr手册的摘录:char *strchr(const char *s, int c); The strchr() function returns a pointer to the first occurrence of the character c in the string s.这是我尝试过的:strchr:push rpbmov rbp, rspmov r12, rdi ; get first argumentmov r13, rsi ; get ...

linux – x86_64程序集execve * char []系统调用【代码】

我试图在不使用标准库的情况下进入一些Linux 64位x86程序集,但是我在处理提交给我的程序(argv)的参数时遇到了一些问题.我认为(基于文档)rsp标志着argc qword的开始,而[rsp 8]将是argv.不幸的是情况并非如此,以下(删节)程序会导致EFAULT(错误地址).sys_execve equ 59 sys_exit equ 60section .datachild db "/bin/sh", 0global _startsection .text_start:mov rdi, child ; #1 filenamemov rsi, [rsp + 8] ; #2 argvmov r...

如何获得linux ebpf程序集?【代码】

我想学习linux ebpf vm,如果我写一个ebpf程序test.c,用过llvm:clang -O2 -target bpf -o test.o test.c.如何在经典bpf中获得像tcpdump -d这样的ebpf程序集,谢谢.解决方法:这取决于你对“学习linux ebpf vm”的意思. 语言本身 如果你的意思是学习eBPF的指令,就像汇编一样的语言本身,你可以看一下the documentation from the kernel(非常密??集)或者来自bcc项目的this summarized version of the syntax. 虚拟机 如果你想看看eBPF虚...