diff --git a/ch3-asm/ch3-04-func.md b/ch3-asm/ch3-04-func.md
index 8a46359..684ceef 100644
--- a/ch3-asm/ch3-04-func.md
+++ b/ch3-asm/ch3-04-func.md
@@ -85,7 +85,7 @@ func SomeFunc(a, b int, c bool) (d float64, err error)
 
 函数的参数有不同的类型,同时含有多个返回值,而且返回值中含有更复杂的接口类型。我们该如何计算每个参数的位置和总的大小呢?
 
-其实函数参数和返回值的大小以及对齐问题和结构体的大小和成员对齐问题是一致的。我们先看看如果用Go语言函数来模拟Foo函数中参数和返回值的地址:
+其实函数参数和返回值的大小以及对齐问题和结构体的大小和成员对齐问题是一致的。我们先看看如何用Go语言函数来模拟Foo函数中参数和返回值的地址:
 
 ```go
 func Foo(FP *struct{a, b, c int}) {