来自cli参数的文本是否需要在汇编中进行格式化? x86_64的

时间:2016-04-26 15:08:12

标签: macos assembly 64-bit x86-64

在这个应用程序中,我试图打印通过命令行参数传递的字符(Intel Mac OS X)。 EX:

./thisapp q

期望的输出:

q

然而,它打印出一堆符号和废话,但有趣的是,不同的角色会产生不同的乱码。这让我相信我很亲密。这是否需要"格式化"为它生产正确的字母?

.section __DATA,__data
.section __TEXT,__text
.globl _start
_start:
    push %rbp
    mov %rsp,%rbp
    lea -32(%rsp), %r10       #<--- should be argv
    add $8, %r10              #<--- should be argv[1]
    movl $0x2000004, %eax
    mov $1, %edi
    mov %r10, %rsi
    mov $16, %edx
    syscall
    xor %rax, %rax
    mov $0x2000001, %eax
    mov $0, %edi
    syscall

1 个答案:

答案 0 :(得分:0)

感谢大家的帮助,我能够让这个工作。以下是其他人希望执行此操作的代码:

rMax <- cellStats(r, max)
myAt <- c(seq(27.5, 29.5, 0.1), rMax[1])
myPal <- jet(length(myAt) - 1)

levelplot(r, layer = 1, margin = FALSE,
          at = myAt,
          par.settings = rasterTheme(myPal))

我想指出,这只会打印1个元素(字母/数字)。我仍然需要弄清楚如何获得传递的任何长度(大小?)。