diff --git a/lec11/report11.md b/lec11/report11.md
index 88f00187730d846700a5fcfb7f66b3f0a95af5f7..299cfb9b3f681c646b162803af8927847d988b1e 100644
--- a/lec11/report11.md
+++ b/lec11/report11.md
@@ -2,3 +2,28 @@
 
 #### 배운 것
 
+##### Call by reference
+
+프로그램은 메모리에 적재되어 실행되는데, 프로그램의 요소들이 메모리의 각 영역에 구분되어 할당된후 메모리에 적재된다. 예를 들어 로컬 변수들은 메모리의 스택 영역에 적재되며 코드의 경우 메모리의 코드 영역에 적재된다.
+
+C언어에서는 call by reference와 call by value만이 존재한다.
+
+##### gprof
+gprof에는 여러가지 옵션들이 존재한다.
+
+* -b : 프로파일링 후에 출력되는 많은 메시지들이 간결하게 정리되어 출력된다.
+* -z : 호출되지 않은 함수와 코드들의 내용들까지 한꺼번에 보여준다. 코드 최적화를 하는데 사용될 것으로 예상된다. 함수의 포인터로 사용해도 함수 사용 카운트가 증가한다.
+* -A : 소스코드에 주석을 달아서보여준다. 함수가 몇번 call 되어있는지 주석을 달아준다.
+* --graph : call graph를 누적해서 보여준다.
+
+제온 CPU에서는 곱셈과 덧셈의 차이가 거의 없으며 심지어 곱셈의 성능이 더 좋은 경우도 있다.
+
+우리의 실습코드 test3.c에서는 연산에서 많은 오버플로우가 일어나기 때문에 성능이 매우 낮아진다. 오버플로우의 경우 error이기 때문에 오버플로우가 발생하는 경우 성능이 매우 낮다.
+
+-m32 -m64를 통해 32비트와 64비트 컴파일을 설정할 수 있다. 하드웨어 특성에 따라 32비트 연산 혹은 64비트 연산이 다른 연산 방식보다 빠른 경우가 생길 수 있다. 따라서 cc 컴파일 시에 위와 같은 옵션을 설정해주어 연산 속도를 비교하는 과정을 시도하는 것이 중요하다.
+
+##### Final Project 관련
+
+0xff와 비트 AND 연산(&)을 사용하는 경우 LSB 8비트만을 남긴다. 따라서 마지막 8비트의 값만을 확인하고 싶으면 0xff를 해당 값과 AND(&)하여 값을 추출해낼 수 있다.
+
+곱셈보다는 나눗셈이 4배 정도 느리다. 따라서 나눗셈을 진행할 때는 곱셈으로써 다루는 것이 효율적이다. 따라서 역수를 상수로써 정의한 다음 곱셈으로써 사용하는 것이 효율적으로 매우 유리하다.