1
0
mirror of https://github.com/chai2010/advanced-go-programming-book.git synced 2025-05-24 12:32:21 +00:00

ch3.3: 修复错误

This commit is contained in:
chai2010 2018-12-12 13:29:35 +08:00
parent 83d6c77b83
commit 16a71d28fb

View File

@ -225,12 +225,12 @@ GLOBL ·helloworld(SB),$16
同时我们可以为字符串准备真正的数据。在下面的汇编代码中我们定义了一个text当前文件内的私有变量`<>`为后缀名内容为“Hello World!”: 同时我们可以为字符串准备真正的数据。在下面的汇编代码中我们定义了一个text当前文件内的私有变量`<>`为后缀名内容为“Hello World!”:
``` ```
GLOBL text<>(SB),$16 GLOBL text<>(SB),NOPTR,$16
DATA text<>+0(SB)/8,$"Hello Wo" DATA text<>+0(SB)/8,$"Hello Wo"
DATA text<>+8(SB)/8,$"rld!" DATA text<>+8(SB)/8,$"rld!"
``` ```
虽然text私有变量表示的字符串只有12个字符长度但是我们依然需要将变量的长度扩展为2的指数倍数这里也就是16个字节的长度。 虽然`text<>`私有变量表示的字符串只有12个字符长度但是我们依然需要将变量的长度扩展为2的指数倍数这里也就是16个字节的长度。其中`NOPTR`表示`text<>`不包含指针数据。
然后使用text私有变量对应的内存地址对应的常量来初始化字符串头结构体中的Data部分并且手工指定Len部分为字符串的长度 然后使用text私有变量对应的内存地址对应的常量来初始化字符串头结构体中的Data部分并且手工指定Len部分为字符串的长度