【问题标题】:How do I compile .s assembly code in UNIX SPARC 64bit correctly?如何在 UNIX SPARC 64 位中正确编译 .s 汇编代码?
【发布时间】:2010-09-07 00:11:52
【问题描述】:

大家好。尝试在 sparc UNIX 64 位环境中编译和运行此“hello, wold”.s 代码时遇到问题,并在其他行和地址上得到 $: "hello.s", line 1: error: invalid character (0xef) 等。 以为是 ANSI UTF 问题,更改并保存并尝试了两种类型。然后尝试使用 ECO 转换将文件保存到 UNIX,但仍然遇到错误。

编译:gcc -o hello hello.s

.data 
.align 4 
string: .ascii "Hello, World!\n"
.text 
.align 4 
.global main 
main: 
mov 1,%o0 
set string,%o1 
mov 14,%o2 
mov 4,%g1 
ta 0 
mov 0,%o0 
mov 1,%g1 
ta 0 

很棒的论坛!

【问题讨论】:

  • @aaa carp:我在 windows 7 中使用了记事本和记事本++,然后将其推送到 unix 学校服务器。我应该以不同的方式保存代码吗?还是使用任何其他编辑器?
  • 尝试将您的代码段直接复制粘贴到 UNIX 编辑器(例如 vi)中。 Windows有不同的文本文件格式,很难说。
  • ok 案例结束。我设法修复它。它需要在没有 BOM 的情况下以 UTF-8 编码。那是什么?!
  • @jdnhldn 请回答您自己的问题并将其标记为正确答案。

标签: unix assembly system-calls


【解决方案1】:

只需将其保存为 UTF-8 编码,无需 BOM(字节顺序标记)

【讨论】:

    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2017-10-20
    • 2021-09-27
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多