【发布时间】:2016-08-26 00:27:15
【问题描述】:
使用 NASM,我需要在给定索引处更改字符串中的字符并以新形式打印字符串。这是我的代码的简化版本:
;test_code.asm
global main
extern printf
output_str: db "----------"
index: dq 7
main:
push rbp
mov rdi, output_str
mov rax, index
mov byte[rdi + rax], 'x'
xor rax, rax
call printf
pop rbp
ret
然后我编译使用:
nasm -felf64 test_code.asm && gcc test_code.o -lm
并得到一个段错误。有人可以指出这里的缺陷吗?我自己好像找不到。
【问题讨论】:
标签: c assembly replace segmentation-fault nasm