From 95a6c8873f7383738de6d4e97d8095e8a278723f Mon Sep 17 00:00:00 2001
From: "Hwanyong Lee-pcc000 (SSH)" <hwan@ajou.ac.kr>
Date: Wed, 15 Feb 2023 11:27:51 +0900
Subject: [PATCH] Lab08 before

---
 lab03/aaa          |   1 +
 lab03/add          | Bin 16888 -> 0 bytes
 lab03/add.c        |   1 +
 lab03/add.o        | Bin 0 -> 2136 bytes
 lab03/add.s        |  95 ++++++
 lab03/all          |   2 -
 lab03/errfile      |   1 -
 lab03/fadd.c       |   4 +
 lab03/fadd.o       | Bin 0 -> 1376 bytes
 lab03/gen          | Bin 16888 -> 0 bytes
 lab03/gen.c        |   3 +-
 lab03/gen.i        | 759 +++++++++++++++++++++++++++++++++++++++++++++
 lab03/gen.o        | Bin 0 -> 2080 bytes
 lab03/gen.s        |  81 +++++
 lab03/infile       |   1 -
 lab03/lserr        |   3 -
 lab03/teeout       |   1 -
 lab03/tlserr       |   4 -
 lab04/func.c       |   8 +
 lab04/func.h       |   3 +
 lab04/func.o       | Bin 0 -> 1480 bytes
 lab04/gen.c        |  13 +
 lab04/gen.o        | Bin 0 -> 2072 bytes
 lab04/main.c       |  18 ++
 lab04/main.o       | Bin 0 -> 2208 bytes
 lab04/mem_test.c   |  12 +
 lab04/tobin.c      |  10 +
 lab04/tobin.o      | Bin 0 -> 1472 bytes
 lab05/func.c       |   8 +
 lab05/func.h       |   4 +
 lab05/gen.c        |  13 +
 lab05/main.c       |  21 ++
 lab05/mem_test.c   |  23 ++
 lab05/test.c       |  21 ++
 lab05/tobin.c      |  10 +
 lab06/const_test.c |  16 +
 lab07/funcp.c      |  36 +++
 lab07/po2.c        |  19 ++
 lab07/pointer.c    |  22 ++
 39 files changed, 1200 insertions(+), 13 deletions(-)
 create mode 100644 lab03/aaa
 delete mode 100755 lab03/add
 create mode 100644 lab03/add.o
 create mode 100644 lab03/add.s
 delete mode 100644 lab03/all
 delete mode 100644 lab03/errfile
 create mode 100644 lab03/fadd.c
 create mode 100644 lab03/fadd.o
 delete mode 100755 lab03/gen
 create mode 100644 lab03/gen.i
 create mode 100644 lab03/gen.o
 create mode 100644 lab03/gen.s
 delete mode 100644 lab03/infile
 delete mode 100644 lab03/lserr
 delete mode 100644 lab03/teeout
 delete mode 100644 lab03/tlserr
 create mode 100644 lab04/func.c
 create mode 100644 lab04/func.h
 create mode 100644 lab04/func.o
 create mode 100644 lab04/gen.c
 create mode 100644 lab04/gen.o
 create mode 100644 lab04/main.c
 create mode 100644 lab04/main.o
 create mode 100644 lab04/mem_test.c
 create mode 100644 lab04/tobin.c
 create mode 100644 lab04/tobin.o
 create mode 100644 lab05/func.c
 create mode 100644 lab05/func.h
 create mode 100644 lab05/gen.c
 create mode 100644 lab05/main.c
 create mode 100644 lab05/mem_test.c
 create mode 100644 lab05/test.c
 create mode 100644 lab05/tobin.c
 create mode 100644 lab06/const_test.c
 create mode 100644 lab07/funcp.c
 create mode 100644 lab07/po2.c
 create mode 100644 lab07/pointer.c

diff --git a/lab03/aaa b/lab03/aaa
new file mode 100644
index 0000000..b4de394
--- /dev/null
+++ b/lab03/aaa
@@ -0,0 +1 @@
+11
diff --git a/lab03/add b/lab03/add
deleted file mode 100755
index f2d0aaaba1eee7fbf1ed109b172305b70a5d8784..0000000000000000000000000000000000000000
GIT binary patch
literal 0
HcmV?d00001

literal 16888
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

diff --git a/lab03/add.c b/lab03/add.c
index 7c112f6..74c4639 100644
--- a/lab03/add.c
+++ b/lab03/add.c
@@ -1,4 +1,5 @@
 #include <stdio.h>
+/* 이환용 이 짰어요 */
 
 int main()
 {
diff --git a/lab03/add.o b/lab03/add.o
new file mode 100644
index 0000000000000000000000000000000000000000..c150cb7fcb215dea0cc34fdcc630e5d0cfa5981a
GIT binary patch
literal 2136
zcmb<-^>JfjWMqH=Mg}_u1P><4z;J^F!FB*M9T@l+co{zP%l!)V=zQwY{6-<gqnkxl
zgMop;qto?=;eq3>UqA{ydP6^W^t!(B=sf1pYYP(D0U}<2h)&lp&9z_tm-u(PzOm(3
zXJ9DtXs-RjRHEe3%?gtD=sdVfh=GA&AIM2i-C&KcrMpAlbi00Fynw~j*F6(nGfwDs
z{nGq`$)nr%M~a6r57=ELtYFP2538mqsHQM@<`tBdD1?;fEBKY>CZ!e?b1|r<C~z?_
zxH~&rDQJWymFAU{Dp=~7=o#o5mV$YPbw&ny1}1ujnh<dYP_PIvFff3e>+ToIz{J3C
z03^l?ay|nCg9wyntO{aatPo(7=3(cUz{tQL!vMh`>1`mwl~16J$(fgpX)O;s2S@-r
z1_cBQ!^i*FWSOzX90LP01I#t3x|qSPM->C{n8CgQu~0EH13Rh!l*i0~-NDQZoKO|0
z6f*-GssIB6*kmCj_k+WPfq{XCfq?-OzUUg1aEKe?5Vyb~ZjVFU4Tm^GVoHi$GDB`+
zW*$SlyN|z<qfflQn_IAJNPLK+laFgWLwtN@aelI;WqfgRVqO|UaY;&QQ4vF0c~NFb
zDnmh0W?o4eLwtO3Nn&z#d~!y1d|F~=4g-S$)PqdWwDjjc1Xw}EL1_vU7BKNBs5nSH
zF9QPuOgs-s9F!(O@*tsN5W&Czj&VLD^=(jbkUEfhQ7C@`lm^+$kEDJBk~k<{VD>6N
z#X;tPFqF%{pjTX(TauW>pjTW{1fervtfJJMM7@&KiV_CBl*E!m2EC->Vg|jUd<Z8w
zKQ}iuuY^G_FTW&J&)qLn7aV3#etKT1UO`cQL26M+C4(N=q|}V~w4%h^RJhfYFhKqR
z<u&w_3Mu;-7+~oWW(P<uj18itp<xYE4-y064ro?90OBw(FmN+4fKxpz2T4H1)u7@~
z<xo)uhHr2dDg)hq9R>z)t|V7KC?A2$M2SlVg#B`;)`R_kEMy6FKP+9t<U~M*GB7ZJ
z+y@f_(NJNyIZjahAUS0008@x8h(&D>v`j&FKTJO;evyrUg+ELz3u-31{sgG~pz;K!
z7DS`#2c<$#-a(Il50D@O0|P9cLGceNC1Ltu;vj3#?FQL110=z~zyPB`Wdav8u0irJ
p{U9^Z;~pe$02K@eagZ?7Sh$EF1E}7BbK#5xsQXLcA`k|;egLK*<VXMj

literal 0
HcmV?d00001

diff --git a/lab03/add.s b/lab03/add.s
new file mode 100644
index 0000000..b0c75b5
--- /dev/null
+++ b/lab03/add.s
@@ -0,0 +1,95 @@
+	.file	"add.c"
+	.text
+	.section	.rodata
+.LC0:
+	.string	"%d %d"
+.LC1:
+	.string	"Input Two Numbers\n"
+.LC2:
+	.string	"%d \n"
+	.text
+	.globl	main
+	.type	main, @function
+main:
+.LFB0:
+	.cfi_startproc
+	endbr64
+	pushq	%rbp
+	.cfi_def_cfa_offset 16
+	.cfi_offset 6, -16
+	movq	%rsp, %rbp
+	.cfi_def_cfa_register 6
+	subq	$32, %rsp
+	movq	%fs:40, %rax
+	movq	%rax, -8(%rbp)
+	xorl	%eax, %eax
+	movl	$0, -12(%rbp)
+.L7:
+	leaq	-16(%rbp), %rdx
+	leaq	-20(%rbp), %rax
+	movq	%rax, %rsi
+	leaq	.LC0(%rip), %rdi
+	movl	$0, %eax
+	call	__isoc99_scanf@PLT
+	movl	%eax, -12(%rbp)
+	cmpl	$-1, -12(%rbp)
+	je	.L10
+	movl	-20(%rbp), %eax
+	cmpl	$9999, %eax
+	je	.L11
+	cmpl	$2, -12(%rbp)
+	je	.L5
+	movq	stderr(%rip), %rax
+	movq	%rax, %rcx
+	movl	$18, %edx
+	movl	$1, %esi
+	leaq	.LC1(%rip), %rdi
+	call	fwrite@PLT
+	jmp	.L6
+.L5:
+	movl	-20(%rbp), %edx
+	movl	-16(%rbp), %eax
+	addl	%edx, %eax
+	movl	%eax, %esi
+	leaq	.LC2(%rip), %rdi
+	movl	$0, %eax
+	call	printf@PLT
+.L6:
+	jmp	.L7
+.L10:
+	nop
+	jmp	.L3
+.L11:
+	nop
+.L3:
+	movl	-12(%rbp), %eax
+	subl	$2, %eax
+	movq	-8(%rbp), %rcx
+	xorq	%fs:40, %rcx
+	je	.L9
+	call	__stack_chk_fail@PLT
+.L9:
+	leave
+	.cfi_def_cfa 7, 8
+	ret
+	.cfi_endproc
+.LFE0:
+	.size	main, .-main
+	.ident	"GCC: (Ubuntu 9.4.0-1ubuntu1~20.04.1) 9.4.0"
+	.section	.note.GNU-stack,"",@progbits
+	.section	.note.gnu.property,"a"
+	.align 8
+	.long	 1f - 0f
+	.long	 4f - 1f
+	.long	 5
+0:
+	.string	 "GNU"
+1:
+	.align 8
+	.long	 0xc0000002
+	.long	 3f - 2f
+2:
+	.long	 0x3
+3:
+	.align 8
+4:
diff --git a/lab03/all b/lab03/all
deleted file mode 100644
index 6f27d2d..0000000
--- a/lab03/all
+++ /dev/null
@@ -1,2 +0,0 @@
-STDOUT: 100
-STDERR: 100
diff --git a/lab03/errfile b/lab03/errfile
deleted file mode 100644
index b22717b..0000000
--- a/lab03/errfile
+++ /dev/null
@@ -1 +0,0 @@
-STDERR: 666
diff --git a/lab03/fadd.c b/lab03/fadd.c
new file mode 100644
index 0000000..db726c4
--- /dev/null
+++ b/lab03/fadd.c
@@ -0,0 +1,4 @@
+int fadd(int a, int b)
+{
+	return a+b;
+}
diff --git a/lab03/fadd.o b/lab03/fadd.o
new file mode 100644
index 0000000000000000000000000000000000000000..b9c87826c2f72e1c767bc5771a5fdfacbdb6b268
GIT binary patch
literal 1376
zcmb<-^>JfjWMqH=Mg}_u1P><4z>vU%U^{@B4h%dD+zg-j<$i^FbUy8@{nJ_cqdW9Z
zx9bna3$ce8+?}1R6f{DUO7lue6)g2k^bB+jOTj$DIwJ!;0~0+%O^7(yG!_O11_1^J
z237_J26w+u1||lE10XSGuq*?E2$W{53SwZa5MY$%Vdt2@$iN`O0Kp(>2@v7RC(y>^
z%**D_!_EQX<G>(4vM_x7k4>5xYX~qfFoRr$MFTSf%$2B;%wXT3ih+2{3~V3@12Z$Q
zV~BwSm>EDJ0b(IA$ZtYO?gaZCB%PL+lA@Q)0HQ!#1rWi&0CqW26f!XA6<6k#BqlNF
z6_*r2=nNREB(<W1K`$k-B#}WcskoRyFF8LqH#M(>K`$@ABvsGdFI2a<Br!P~%1_TL
z)hj5<FGwvasbtVAO3g{sOU;N+D@x2wg<4JlCC$J9_9c3VLDC=t1Ki(GJ3#RYWr8V1
zsDAVqiU7-E66pHX85kHqVNI@n9jN^VXjZ}O2gxH#!R&|8rcnLJYC!B35P=25^ueTD
z85qE+3MK9t7#KRB3Sj92$_4us#s<-`Q2WvKuK-ChFfdp^X&40xD;OI@gZv3fy|DNK
ziGlC~s6%1##|d>OOg~H<qzv6|uznE1z`*bUN^>zVFo4WJ*AEgyk2{c-3m}6T7#Mg#
h93%`ChKmR?fbu<@3upX*DolrqKp0SA2#0}z0RRd|RvG{R

literal 0
HcmV?d00001

diff --git a/lab03/gen b/lab03/gen
deleted file mode 100755
index 814d2160f3e3e5eb848bac0ed720ebe432ac627d..0000000000000000000000000000000000000000
GIT binary patch
literal 0
HcmV?d00001

literal 16888
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

diff --git a/lab03/gen.c b/lab03/gen.c
index 82d7d37..d8d2894 100644
--- a/lab03/gen.c
+++ b/lab03/gen.c
@@ -1,4 +1,5 @@
 #include <stdio.h>
+#define AA 9999
 
 int main()
 {
@@ -8,7 +9,7 @@ int main()
 	while(1)
 	{
 		scret = scanf("%d %d", &a, &b);
-		if (scret == EOF || a== 9999)
+		if (scret == EOF || a== AA)
 			break;
 		printf("%d %d ", a, b);
 	}
diff --git a/lab03/gen.i b/lab03/gen.i
new file mode 100644
index 0000000..c2ee1cf
--- /dev/null
+++ b/lab03/gen.i
@@ -0,0 +1,759 @@
+# 1 "gen.c"
+# 1 "<built-in>"
+# 1 "<command-line>"
+# 31 "<command-line>"
+# 1 "/usr/include/stdc-predef.h" 1 3 4
+# 32 "<command-line>" 2
+# 1 "gen.c"
+# 1 "/usr/include/stdio.h" 1 3 4
+# 27 "/usr/include/stdio.h" 3 4
+# 1 "/usr/include/x86_64-linux-gnu/bits/libc-header-start.h" 1 3 4
+# 33 "/usr/include/x86_64-linux-gnu/bits/libc-header-start.h" 3 4
+# 1 "/usr/include/features.h" 1 3 4
+# 461 "/usr/include/features.h" 3 4
+# 1 "/usr/include/x86_64-linux-gnu/sys/cdefs.h" 1 3 4
+# 452 "/usr/include/x86_64-linux-gnu/sys/cdefs.h" 3 4
+# 1 "/usr/include/x86_64-linux-gnu/bits/wordsize.h" 1 3 4
+# 453 "/usr/include/x86_64-linux-gnu/sys/cdefs.h" 2 3 4
+# 1 "/usr/include/x86_64-linux-gnu/bits/long-double.h" 1 3 4
+# 454 "/usr/include/x86_64-linux-gnu/sys/cdefs.h" 2 3 4
+# 462 "/usr/include/features.h" 2 3 4
+# 485 "/usr/include/features.h" 3 4
+# 1 "/usr/include/x86_64-linux-gnu/gnu/stubs.h" 1 3 4
+# 10 "/usr/include/x86_64-linux-gnu/gnu/stubs.h" 3 4
+# 1 "/usr/include/x86_64-linux-gnu/gnu/stubs-64.h" 1 3 4
+# 11 "/usr/include/x86_64-linux-gnu/gnu/stubs.h" 2 3 4
+# 486 "/usr/include/features.h" 2 3 4
+# 34 "/usr/include/x86_64-linux-gnu/bits/libc-header-start.h" 2 3 4
+# 28 "/usr/include/stdio.h" 2 3 4
+
+
+
+
+
+# 1 "/usr/lib/gcc/x86_64-linux-gnu/9/include/stddef.h" 1 3 4
+# 209 "/usr/lib/gcc/x86_64-linux-gnu/9/include/stddef.h" 3 4
+
+# 209 "/usr/lib/gcc/x86_64-linux-gnu/9/include/stddef.h" 3 4
+typedef long unsigned int size_t;
+# 34 "/usr/include/stdio.h" 2 3 4
+
+
+# 1 "/usr/lib/gcc/x86_64-linux-gnu/9/include/stdarg.h" 1 3 4
+# 40 "/usr/lib/gcc/x86_64-linux-gnu/9/include/stdarg.h" 3 4
+typedef __builtin_va_list __gnuc_va_list;
+# 37 "/usr/include/stdio.h" 2 3 4
+
+# 1 "/usr/include/x86_64-linux-gnu/bits/types.h" 1 3 4
+# 27 "/usr/include/x86_64-linux-gnu/bits/types.h" 3 4
+# 1 "/usr/include/x86_64-linux-gnu/bits/wordsize.h" 1 3 4
+# 28 "/usr/include/x86_64-linux-gnu/bits/types.h" 2 3 4
+# 1 "/usr/include/x86_64-linux-gnu/bits/timesize.h" 1 3 4
+# 29 "/usr/include/x86_64-linux-gnu/bits/types.h" 2 3 4
+
+
+typedef unsigned char __u_char;
+typedef unsigned short int __u_short;
+typedef unsigned int __u_int;
+typedef unsigned long int __u_long;
+
+
+typedef signed char __int8_t;
+typedef unsigned char __uint8_t;
+typedef signed short int __int16_t;
+typedef unsigned short int __uint16_t;
+typedef signed int __int32_t;
+typedef unsigned int __uint32_t;
+
+typedef signed long int __int64_t;
+typedef unsigned long int __uint64_t;
+
+
+
+
+
+
+typedef __int8_t __int_least8_t;
+typedef __uint8_t __uint_least8_t;
+typedef __int16_t __int_least16_t;
+typedef __uint16_t __uint_least16_t;
+typedef __int32_t __int_least32_t;
+typedef __uint32_t __uint_least32_t;
+typedef __int64_t __int_least64_t;
+typedef __uint64_t __uint_least64_t;
+
+
+
+typedef long int __quad_t;
+typedef unsigned long int __u_quad_t;
+
+
+
+
+
+
+
+typedef long int __intmax_t;
+typedef unsigned long int __uintmax_t;
+# 141 "/usr/include/x86_64-linux-gnu/bits/types.h" 3 4
+# 1 "/usr/include/x86_64-linux-gnu/bits/typesizes.h" 1 3 4
+# 142 "/usr/include/x86_64-linux-gnu/bits/types.h" 2 3 4
+# 1 "/usr/include/x86_64-linux-gnu/bits/time64.h" 1 3 4
+# 143 "/usr/include/x86_64-linux-gnu/bits/types.h" 2 3 4
+
+
+typedef unsigned long int __dev_t;
+typedef unsigned int __uid_t;
+typedef unsigned int __gid_t;
+typedef unsigned long int __ino_t;
+typedef unsigned long int __ino64_t;
+typedef unsigned int __mode_t;
+typedef unsigned long int __nlink_t;
+typedef long int __off_t;
+typedef long int __off64_t;
+typedef int __pid_t;
+typedef struct { int __val[2]; } __fsid_t;
+typedef long int __clock_t;
+typedef unsigned long int __rlim_t;
+typedef unsigned long int __rlim64_t;
+typedef unsigned int __id_t;
+typedef long int __time_t;
+typedef unsigned int __useconds_t;
+typedef long int __suseconds_t;
+
+typedef int __daddr_t;
+typedef int __key_t;
+
+
+typedef int __clockid_t;
+
+
+typedef void * __timer_t;
+
+
+typedef long int __blksize_t;
+
+
+
+
+typedef long int __blkcnt_t;
+typedef long int __blkcnt64_t;
+
+
+typedef unsigned long int __fsblkcnt_t;
+typedef unsigned long int __fsblkcnt64_t;
+
+
+typedef unsigned long int __fsfilcnt_t;
+typedef unsigned long int __fsfilcnt64_t;
+
+
+typedef long int __fsword_t;
+
+typedef long int __ssize_t;
+
+
+typedef long int __syscall_slong_t;
+
+typedef unsigned long int __syscall_ulong_t;
+
+
+
+typedef __off64_t __loff_t;
+typedef char *__caddr_t;
+
+
+typedef long int __intptr_t;
+
+
+typedef unsigned int __socklen_t;
+
+
+
+
+typedef int __sig_atomic_t;
+# 39 "/usr/include/stdio.h" 2 3 4
+# 1 "/usr/include/x86_64-linux-gnu/bits/types/__fpos_t.h" 1 3 4
+
+
+
+
+# 1 "/usr/include/x86_64-linux-gnu/bits/types/__mbstate_t.h" 1 3 4
+# 13 "/usr/include/x86_64-linux-gnu/bits/types/__mbstate_t.h" 3 4
+typedef struct
+{
+  int __count;
+  union
+  {
+    unsigned int __wch;
+    char __wchb[4];
+  } __value;
+} __mbstate_t;
+# 6 "/usr/include/x86_64-linux-gnu/bits/types/__fpos_t.h" 2 3 4
+
+
+
+
+typedef struct _G_fpos_t
+{
+  __off_t __pos;
+  __mbstate_t __state;
+} __fpos_t;
+# 40 "/usr/include/stdio.h" 2 3 4
+# 1 "/usr/include/x86_64-linux-gnu/bits/types/__fpos64_t.h" 1 3 4
+# 10 "/usr/include/x86_64-linux-gnu/bits/types/__fpos64_t.h" 3 4
+typedef struct _G_fpos64_t
+{
+  __off64_t __pos;
+  __mbstate_t __state;
+} __fpos64_t;
+# 41 "/usr/include/stdio.h" 2 3 4
+# 1 "/usr/include/x86_64-linux-gnu/bits/types/__FILE.h" 1 3 4
+
+
+
+struct _IO_FILE;
+typedef struct _IO_FILE __FILE;
+# 42 "/usr/include/stdio.h" 2 3 4
+# 1 "/usr/include/x86_64-linux-gnu/bits/types/FILE.h" 1 3 4
+
+
+
+struct _IO_FILE;
+
+
+typedef struct _IO_FILE FILE;
+# 43 "/usr/include/stdio.h" 2 3 4
+# 1 "/usr/include/x86_64-linux-gnu/bits/types/struct_FILE.h" 1 3 4
+# 35 "/usr/include/x86_64-linux-gnu/bits/types/struct_FILE.h" 3 4
+struct _IO_FILE;
+struct _IO_marker;
+struct _IO_codecvt;
+struct _IO_wide_data;
+
+
+
+
+typedef void _IO_lock_t;
+
+
+
+
+
+struct _IO_FILE
+{
+  int _flags;
+
+
+  char *_IO_read_ptr;
+  char *_IO_read_end;
+  char *_IO_read_base;
+  char *_IO_write_base;
+  char *_IO_write_ptr;
+  char *_IO_write_end;
+  char *_IO_buf_base;
+  char *_IO_buf_end;
+
+
+  char *_IO_save_base;
+  char *_IO_backup_base;
+  char *_IO_save_end;
+
+  struct _IO_marker *_markers;
+
+  struct _IO_FILE *_chain;
+
+  int _fileno;
+  int _flags2;
+  __off_t _old_offset;
+
+
+  unsigned short _cur_column;
+  signed char _vtable_offset;
+  char _shortbuf[1];
+
+  _IO_lock_t *_lock;
+
+
+
+
+
+
+
+  __off64_t _offset;
+
+  struct _IO_codecvt *_codecvt;
+  struct _IO_wide_data *_wide_data;
+  struct _IO_FILE *_freeres_list;
+  void *_freeres_buf;
+  size_t __pad5;
+  int _mode;
+
+  char _unused2[15 * sizeof (int) - 4 * sizeof (void *) - sizeof (size_t)];
+};
+# 44 "/usr/include/stdio.h" 2 3 4
+# 52 "/usr/include/stdio.h" 3 4
+typedef __gnuc_va_list va_list;
+# 63 "/usr/include/stdio.h" 3 4
+typedef __off_t off_t;
+# 77 "/usr/include/stdio.h" 3 4
+typedef __ssize_t ssize_t;
+
+
+
+
+
+
+typedef __fpos_t fpos_t;
+# 133 "/usr/include/stdio.h" 3 4
+# 1 "/usr/include/x86_64-linux-gnu/bits/stdio_lim.h" 1 3 4
+# 134 "/usr/include/stdio.h" 2 3 4
+
+
+
+extern FILE *stdin;
+extern FILE *stdout;
+extern FILE *stderr;
+
+
+
+
+
+
+extern int remove (const char *__filename) __attribute__ ((__nothrow__ , __leaf__));
+
+extern int rename (const char *__old, const char *__new) __attribute__ ((__nothrow__ , __leaf__));
+
+
+
+extern int renameat (int __oldfd, const char *__old, int __newfd,
+       const char *__new) __attribute__ ((__nothrow__ , __leaf__));
+# 173 "/usr/include/stdio.h" 3 4
+extern FILE *tmpfile (void) ;
+# 187 "/usr/include/stdio.h" 3 4
+extern char *tmpnam (char *__s) __attribute__ ((__nothrow__ , __leaf__)) ;
+
+
+
+
+extern char *tmpnam_r (char *__s) __attribute__ ((__nothrow__ , __leaf__)) ;
+# 204 "/usr/include/stdio.h" 3 4
+extern char *tempnam (const char *__dir, const char *__pfx)
+     __attribute__ ((__nothrow__ , __leaf__)) __attribute__ ((__malloc__)) ;
+
+
+
+
+
+
+
+extern int fclose (FILE *__stream);
+
+
+
+
+extern int fflush (FILE *__stream);
+# 227 "/usr/include/stdio.h" 3 4
+extern int fflush_unlocked (FILE *__stream);
+# 246 "/usr/include/stdio.h" 3 4
+extern FILE *fopen (const char *__restrict __filename,
+      const char *__restrict __modes) ;
+
+
+
+
+extern FILE *freopen (const char *__restrict __filename,
+        const char *__restrict __modes,
+        FILE *__restrict __stream) ;
+# 279 "/usr/include/stdio.h" 3 4
+extern FILE *fdopen (int __fd, const char *__modes) __attribute__ ((__nothrow__ , __leaf__)) ;
+# 292 "/usr/include/stdio.h" 3 4
+extern FILE *fmemopen (void *__s, size_t __len, const char *__modes)
+  __attribute__ ((__nothrow__ , __leaf__)) ;
+
+
+
+
+extern FILE *open_memstream (char **__bufloc, size_t *__sizeloc) __attribute__ ((__nothrow__ , __leaf__)) ;
+
+
+
+
+
+extern void setbuf (FILE *__restrict __stream, char *__restrict __buf) __attribute__ ((__nothrow__ , __leaf__));
+
+
+
+extern int setvbuf (FILE *__restrict __stream, char *__restrict __buf,
+      int __modes, size_t __n) __attribute__ ((__nothrow__ , __leaf__));
+
+
+
+
+extern void setbuffer (FILE *__restrict __stream, char *__restrict __buf,
+         size_t __size) __attribute__ ((__nothrow__ , __leaf__));
+
+
+extern void setlinebuf (FILE *__stream) __attribute__ ((__nothrow__ , __leaf__));
+
+
+
+
+
+
+
+extern int fprintf (FILE *__restrict __stream,
+      const char *__restrict __format, ...);
+
+
+
+
+extern int printf (const char *__restrict __format, ...);
+
+extern int sprintf (char *__restrict __s,
+      const char *__restrict __format, ...) __attribute__ ((__nothrow__));
+
+
+
+
+
+extern int vfprintf (FILE *__restrict __s, const char *__restrict __format,
+       __gnuc_va_list __arg);
+
+
+
+
+extern int vprintf (const char *__restrict __format, __gnuc_va_list __arg);
+
+extern int vsprintf (char *__restrict __s, const char *__restrict __format,
+       __gnuc_va_list __arg) __attribute__ ((__nothrow__));
+
+
+
+extern int snprintf (char *__restrict __s, size_t __maxlen,
+       const char *__restrict __format, ...)
+     __attribute__ ((__nothrow__)) __attribute__ ((__format__ (__printf__, 3, 4)));
+
+extern int vsnprintf (char *__restrict __s, size_t __maxlen,
+        const char *__restrict __format, __gnuc_va_list __arg)
+     __attribute__ ((__nothrow__)) __attribute__ ((__format__ (__printf__, 3, 0)));
+# 379 "/usr/include/stdio.h" 3 4
+extern int vdprintf (int __fd, const char *__restrict __fmt,
+       __gnuc_va_list __arg)
+     __attribute__ ((__format__ (__printf__, 2, 0)));
+extern int dprintf (int __fd, const char *__restrict __fmt, ...)
+     __attribute__ ((__format__ (__printf__, 2, 3)));
+
+
+
+
+
+
+
+extern int fscanf (FILE *__restrict __stream,
+     const char *__restrict __format, ...) ;
+
+
+
+
+extern int scanf (const char *__restrict __format, ...) ;
+
+extern int sscanf (const char *__restrict __s,
+     const char *__restrict __format, ...) __attribute__ ((__nothrow__ , __leaf__));
+
+
+
+
+
+
+extern int fscanf (FILE *__restrict __stream, const char *__restrict __format, ...) __asm__ ("" "__isoc99_fscanf")
+
+                               ;
+extern int scanf (const char *__restrict __format, ...) __asm__ ("" "__isoc99_scanf")
+                              ;
+extern int sscanf (const char *__restrict __s, const char *__restrict __format, ...) __asm__ ("" "__isoc99_sscanf") __attribute__ ((__nothrow__ , __leaf__))
+
+                      ;
+# 432 "/usr/include/stdio.h" 3 4
+extern int vfscanf (FILE *__restrict __s, const char *__restrict __format,
+      __gnuc_va_list __arg)
+     __attribute__ ((__format__ (__scanf__, 2, 0))) ;
+
+
+
+
+
+extern int vscanf (const char *__restrict __format, __gnuc_va_list __arg)
+     __attribute__ ((__format__ (__scanf__, 1, 0))) ;
+
+
+extern int vsscanf (const char *__restrict __s,
+      const char *__restrict __format, __gnuc_va_list __arg)
+     __attribute__ ((__nothrow__ , __leaf__)) __attribute__ ((__format__ (__scanf__, 2, 0)));
+
+
+
+
+extern int vfscanf (FILE *__restrict __s, const char *__restrict __format, __gnuc_va_list __arg) __asm__ ("" "__isoc99_vfscanf")
+
+
+
+     __attribute__ ((__format__ (__scanf__, 2, 0))) ;
+extern int vscanf (const char *__restrict __format, __gnuc_va_list __arg) __asm__ ("" "__isoc99_vscanf")
+
+     __attribute__ ((__format__ (__scanf__, 1, 0))) ;
+extern int vsscanf (const char *__restrict __s, const char *__restrict __format, __gnuc_va_list __arg) __asm__ ("" "__isoc99_vsscanf") __attribute__ ((__nothrow__ , __leaf__))
+
+
+
+     __attribute__ ((__format__ (__scanf__, 2, 0)));
+# 485 "/usr/include/stdio.h" 3 4
+extern int fgetc (FILE *__stream);
+extern int getc (FILE *__stream);
+
+
+
+
+
+extern int getchar (void);
+
+
+
+
+
+
+extern int getc_unlocked (FILE *__stream);
+extern int getchar_unlocked (void);
+# 510 "/usr/include/stdio.h" 3 4
+extern int fgetc_unlocked (FILE *__stream);
+# 521 "/usr/include/stdio.h" 3 4
+extern int fputc (int __c, FILE *__stream);
+extern int putc (int __c, FILE *__stream);
+
+
+
+
+
+extern int putchar (int __c);
+# 537 "/usr/include/stdio.h" 3 4
+extern int fputc_unlocked (int __c, FILE *__stream);
+
+
+
+
+
+
+
+extern int putc_unlocked (int __c, FILE *__stream);
+extern int putchar_unlocked (int __c);
+
+
+
+
+
+
+extern int getw (FILE *__stream);
+
+
+extern int putw (int __w, FILE *__stream);
+
+
+
+
+
+
+
+extern char *fgets (char *__restrict __s, int __n, FILE *__restrict __stream)
+     ;
+# 603 "/usr/include/stdio.h" 3 4
+extern __ssize_t __getdelim (char **__restrict __lineptr,
+                             size_t *__restrict __n, int __delimiter,
+                             FILE *__restrict __stream) ;
+extern __ssize_t getdelim (char **__restrict __lineptr,
+                           size_t *__restrict __n, int __delimiter,
+                           FILE *__restrict __stream) ;
+
+
+
+
+
+
+
+extern __ssize_t getline (char **__restrict __lineptr,
+                          size_t *__restrict __n,
+                          FILE *__restrict __stream) ;
+
+
+
+
+
+
+
+extern int fputs (const char *__restrict __s, FILE *__restrict __stream);
+
+
+
+
+
+extern int puts (const char *__s);
+
+
+
+
+
+
+extern int ungetc (int __c, FILE *__stream);
+
+
+
+
+
+
+extern size_t fread (void *__restrict __ptr, size_t __size,
+       size_t __n, FILE *__restrict __stream) ;
+
+
+
+
+extern size_t fwrite (const void *__restrict __ptr, size_t __size,
+        size_t __n, FILE *__restrict __s);
+# 673 "/usr/include/stdio.h" 3 4
+extern size_t fread_unlocked (void *__restrict __ptr, size_t __size,
+         size_t __n, FILE *__restrict __stream) ;
+extern size_t fwrite_unlocked (const void *__restrict __ptr, size_t __size,
+          size_t __n, FILE *__restrict __stream);
+
+
+
+
+
+
+
+extern int fseek (FILE *__stream, long int __off, int __whence);
+
+
+
+
+extern long int ftell (FILE *__stream) ;
+
+
+
+
+extern void rewind (FILE *__stream);
+# 707 "/usr/include/stdio.h" 3 4
+extern int fseeko (FILE *__stream, __off_t __off, int __whence);
+
+
+
+
+extern __off_t ftello (FILE *__stream) ;
+# 731 "/usr/include/stdio.h" 3 4
+extern int fgetpos (FILE *__restrict __stream, fpos_t *__restrict __pos);
+
+
+
+
+extern int fsetpos (FILE *__stream, const fpos_t *__pos);
+# 757 "/usr/include/stdio.h" 3 4
+extern void clearerr (FILE *__stream) __attribute__ ((__nothrow__ , __leaf__));
+
+extern int feof (FILE *__stream) __attribute__ ((__nothrow__ , __leaf__)) ;
+
+extern int ferror (FILE *__stream) __attribute__ ((__nothrow__ , __leaf__)) ;
+
+
+
+extern void clearerr_unlocked (FILE *__stream) __attribute__ ((__nothrow__ , __leaf__));
+extern int feof_unlocked (FILE *__stream) __attribute__ ((__nothrow__ , __leaf__)) ;
+extern int ferror_unlocked (FILE *__stream) __attribute__ ((__nothrow__ , __leaf__)) ;
+
+
+
+
+
+
+
+extern void perror (const char *__s);
+
+
+
+
+
+# 1 "/usr/include/x86_64-linux-gnu/bits/sys_errlist.h" 1 3 4
+# 26 "/usr/include/x86_64-linux-gnu/bits/sys_errlist.h" 3 4
+extern int sys_nerr;
+extern const char *const sys_errlist[];
+# 782 "/usr/include/stdio.h" 2 3 4
+
+
+
+
+extern int fileno (FILE *__stream) __attribute__ ((__nothrow__ , __leaf__)) ;
+
+
+
+
+extern int fileno_unlocked (FILE *__stream) __attribute__ ((__nothrow__ , __leaf__)) ;
+# 800 "/usr/include/stdio.h" 3 4
+extern FILE *popen (const char *__command, const char *__modes) ;
+
+
+
+
+
+extern int pclose (FILE *__stream);
+
+
+
+
+
+extern char *ctermid (char *__s) __attribute__ ((__nothrow__ , __leaf__));
+# 840 "/usr/include/stdio.h" 3 4
+extern void flockfile (FILE *__stream) __attribute__ ((__nothrow__ , __leaf__));
+
+
+
+extern int ftrylockfile (FILE *__stream) __attribute__ ((__nothrow__ , __leaf__)) ;
+
+
+extern void funlockfile (FILE *__stream) __attribute__ ((__nothrow__ , __leaf__));
+# 858 "/usr/include/stdio.h" 3 4
+extern int __uflow (FILE *);
+extern int __overflow (FILE *, int);
+# 873 "/usr/include/stdio.h" 3 4
+
+# 2 "gen.c" 2
+
+
+
+# 4 "gen.c"
+int main()
+{
+ int a,b;
+ int scret=0;
+ setvbuf(
+# 8 "gen.c" 3 4
+        stdout
+# 8 "gen.c"
+              , 
+# 8 "gen.c" 3 4
+                ((void *)0)
+# 8 "gen.c"
+                    , 
+# 8 "gen.c" 3 4
+                      1
+# 8 "gen.c"
+                            ,5);
+ while(1)
+ {
+  scret = scanf("%d %d", &a, &b);
+  if (scret == 
+# 12 "gen.c" 3 4
+              (-1) 
+# 12 "gen.c"
+                  || a== 9999)
+   break;
+  printf("%d %d ", a, b);
+ }
+ return scret;
+}
diff --git a/lab03/gen.o b/lab03/gen.o
new file mode 100644
index 0000000000000000000000000000000000000000..7b4804338d2218182c0d4b6d2a02ac76b7cf9dd3
GIT binary patch
literal 2080
zcmb<-^>JfjWMqH=Mg}_u1P><4z_5S?!FB*M9T@l+co{zP%l!)V=zQwY{6-<gqnkxl
zgMop;qto?=;eq3>UqA{yx>-TgP7t{ZWb{4|*Q4|J3ozXq`oW{u^^Hg8F^^tbkjM@Y
z0ha4@{nA|f<$sB4x9b~Qesu<h66x;H58bYBu&8~#t=sjBN4M{f6c1w_up>%X!G@eX
zteT>rn!*4k6&M)Yot>=|G(wX~^GZq;EcHzE40H`k!92q{BLh7H6Foysh&ad{3?Od{
zFfcHHT<`7|%D}|HZ~!F643=eJ5P{N+RY44l6#|UXJnS437#SF37$6uVy%<Ee@(Hvt
zIrFkH&EjF_0105npa5cF`1l{2EHl=aVPIfpfVl=$7c<!PsA3=<GuSsE7Aj_DU`G{z
z@|YR0JD8b)6RHB0VrF1N6<}Zhn=FLnesGvDFfi~iFff3^7hQue4slH!;)XcHL1`76
z`R+K>Go+{H=_NDdCT8X_6qlsrmzFTZyZiV%Ir_x=ySW9shQx<BI{CQ9GZd$mlqHp>
zF~rAb7Uw5hTE-VAC+4Lw6clCVm4HNxOA?c_<C8P8<I@r|a~M>i9%N!*VBlt8VEFSN
z0&Jk-pftscB<=?l2dM|8J(&6ks5nSHACmeis5neLhz1F@fCvT#a7y4uQa=|-927n<
z^A(`tApIZ=<uWkn6<6k#BqlNF6_*r2=nNREC^aWhuOzjigh4MQu_Tc}FR8egL9Zwu
z!b#50%}vcKVbIIVFG<yN_Y2hp2Mv^;o>!_@P?TSgT2xZWpa(W7H6uQ)C^0t`ZZ#zg
zkbgjV3Oz-F(gny|SULo;K^UYKM8mK&H0)sNVd5FkEVlwG0E$zPURX|%fQqXzFo07%
zR5?_Xf#ETng~|Y#fh?lKzyQvD<mw0I3y_&8amj$NAC%^h?E|Sr=37GDZ-6Ywz`*bU
z$_Kd*$^=s|{V>`Isvj(gM99DtAc=vP=)ytJvIE`y3Q&ch_yy^MVOaRX_*qc<(e*n(
z^;^IcLTPmUpi~ITYv}PW01{+iV1UIlDE>jEAxu9^9Api;-5{$fKoSfL3^SlKs2t>i
y#x+PDrXOS`dfbEL1)zek@&F_T!cgNtOfVK?0M!p*CJLbeb$<zpC?u^S3jqM+Pt;rh

literal 0
HcmV?d00001

diff --git a/lab03/gen.s b/lab03/gen.s
new file mode 100644
index 0000000..36d77fe
--- /dev/null
+++ b/lab03/gen.s
@@ -0,0 +1,81 @@
+	.file	"gen.c"
+	.text
+	.section	.rodata
+.LC0:
+	.string	"%d %d"
+.LC1:
+	.string	"%d %d "
+	.text
+	.globl	main
+	.type	main, @function
+main:
+.LFB0:
+	.cfi_startproc
+	endbr64
+	pushq	%rbp
+	.cfi_def_cfa_offset 16
+	.cfi_offset 6, -16
+	movq	%rsp, %rbp
+	.cfi_def_cfa_register 6
+	subq	$32, %rsp
+	movq	%fs:40, %rax
+	movq	%rax, -8(%rbp)
+	xorl	%eax, %eax
+	movl	$0, -12(%rbp)
+	movq	stdout(%rip), %rax
+	movl	$5, %ecx
+	movl	$1, %edx
+	movl	$0, %esi
+	movq	%rax, %rdi
+	call	setvbuf@PLT
+.L3:
+	leaq	-16(%rbp), %rdx
+	leaq	-20(%rbp), %rax
+	movq	%rax, %rsi
+	leaq	.LC0(%rip), %rdi
+	movl	$0, %eax
+	call	__isoc99_scanf@PLT
+	movl	%eax, -12(%rbp)
+	cmpl	$-1, -12(%rbp)
+	je	.L2
+	movl	-20(%rbp), %eax
+	cmpl	$9999, %eax
+	je	.L2
+	movl	-16(%rbp), %edx
+	movl	-20(%rbp), %eax
+	movl	%eax, %esi
+	leaq	.LC1(%rip), %rdi
+	movl	$0, %eax
+	call	printf@PLT
+	jmp	.L3
+.L2:
+	movl	-12(%rbp), %eax
+	movq	-8(%rbp), %rcx
+	xorq	%fs:40, %rcx
+	je	.L5
+	call	__stack_chk_fail@PLT
+.L5:
+	leave
+	.cfi_def_cfa 7, 8
+	ret
+	.cfi_endproc
+.LFE0:
+	.size	main, .-main
+	.ident	"GCC: (Ubuntu 9.4.0-1ubuntu1~20.04.1) 9.4.0"
+	.section	.note.GNU-stack,"",@progbits
+	.section	.note.gnu.property,"a"
+	.align 8
+	.long	 1f - 0f
+	.long	 4f - 1f
+	.long	 5
+0:
+	.string	 "GNU"
+1:
+	.align 8
+	.long	 0xc0000002
+	.long	 3f - 2f
+2:
+	.long	 0x3
+3:
+	.align 8
+4:
diff --git a/lab03/infile b/lab03/infile
deleted file mode 100644
index ebc4bdc..0000000
--- a/lab03/infile
+++ /dev/null
@@ -1 +0,0 @@
-100 200 300
diff --git a/lab03/lserr b/lab03/lserr
deleted file mode 100644
index cd854aa..0000000
--- a/lab03/lserr
+++ /dev/null
@@ -1,3 +0,0 @@
-ls: cannot access 'infile': No such file or directory
-ls: cannot access 'infile': No such file or directory
-ls: cannot access 'infile': No such file or directory
diff --git a/lab03/teeout b/lab03/teeout
deleted file mode 100644
index 1746327..0000000
--- a/lab03/teeout
+++ /dev/null
@@ -1 +0,0 @@
-200 200 300 300 
\ No newline at end of file
diff --git a/lab03/tlserr b/lab03/tlserr
deleted file mode 100644
index 7630549..0000000
--- a/lab03/tlserr
+++ /dev/null
@@ -1,4 +0,0 @@
-This is ls ERROR mew
-ls: cannot access 'infile': No such file or directory
-ls: cannot access 'infile': No such file or directory
-ls: cannot access 'infile': No such file or directory
diff --git a/lab04/func.c b/lab04/func.c
new file mode 100644
index 0000000..827bd92
--- /dev/null
+++ b/lab04/func.c
@@ -0,0 +1,8 @@
+#include "func.h"
+
+int func1(int a){
+	return a*10;
+}
+int func2(int a){
+	return a*2;
+}
diff --git a/lab04/func.h b/lab04/func.h
new file mode 100644
index 0000000..65c565a
--- /dev/null
+++ b/lab04/func.h
@@ -0,0 +1,3 @@
+#define DF(a) ((a)*(a))
+
+extern int func1(int x);
diff --git a/lab04/func.o b/lab04/func.o
new file mode 100644
index 0000000000000000000000000000000000000000..f6e39705b8e0fda6b53d4e786895527af3494730
GIT binary patch
literal 1480
zcmb<-^>JfjWMqH=Mg}_u1P><4z;J>I!FB*M9T<2RxEVh4%l!)V=zQ8)`=>kfPv?b$
z511G)Fdm3Kj4a{$2PDGa?(A%(pb?r>npaY)V5w)KXP|3X3g#Ks85!sqnCKa5Lc|#u
zSQr=>1Q-|?SQ!`?-2Flsm>3uifW(-=b~7-DKxxLRAO^+?0Y+&ac8&>*3=A?15Db!*
z1QD)$0&PsryleqH>>N-z8<02y1A`EVhRJ(E<UvB%Fepq|7(V{TCdZ65#26TuL9WK4
zftdm33sgyFuy0YtKs;s!HV}n@nHktI#6SYf;LroH5E$flAtZN#!-j!@fe#!Gj0`Y7
zI7~p=(n|A^^^zGtlp&Zj0*NvxfJp|h&ybP?10+o##9`(!=oMGymLw)I=oOa~LFfz^
zt0c9egh4MQu_Tc}FR8egK`%K!H#aq}gh4Maza&-9-7i$PxFj(-8_G}5E7dC~$}dPQ
zDyd}9D@x5t)Jx5XPb*5yO@%s&0!o^J0USE$Ar14FHk#R>^nfg+2-S}sv)Raskl5(@
z)fpHVKygH_ejTX&21s^*m@xZ6@*qA8!|aFArcnJbc^Ew%#z3QC`e4GY3=H7Zh@2)s
zax*{#0|PwWK)GPQ!q^}>7HU7b{v9Am1_p)*C=H`PVFhD@XplUpe1OFlNDPDxpa#Oi
zg%j#dn0^V6A{=&uqy(TI<$%&$3=9k)Gtl*e#L(joq+bGRKdih0iGeWGI1m$z1sOo)
T1(=CKBtZ42qliM%DzXp&X2D`)

literal 0
HcmV?d00001

diff --git a/lab04/gen.c b/lab04/gen.c
new file mode 100644
index 0000000..392c697
--- /dev/null
+++ b/lab04/gen.c
@@ -0,0 +1,13 @@
+#include <stdio.h>
+#define AA 9999
+
+int main(void){
+	int a,b,scanf_ret;
+	setvbuf(stdout,NULL,_IOLBF,5);
+	while(1){
+		scanf_ret = scanf("%d %d",&a,&b);
+		if(scanf_ret == EOF || a==AA)break;
+		printf("%d %d\n",a,b);
+	}
+	return scanf_ret;
+}
diff --git a/lab04/gen.o b/lab04/gen.o
new file mode 100644
index 0000000000000000000000000000000000000000..5e2d6084b4bce404bf4a853dc2c726644d82420f
GIT binary patch
literal 2072
zcmb<-^>JfjWMqH=Mg}_u1P><4z%YXa!FB*M9T@l+co{zP%l!)V=zQwY{6-<gqnkxl
zgMop;qto?=;Q^0sR*=G-AaWPT%zYrPN9XYuV7fQ-gGaCH8;{Oo9=*08ksTlcEZ6D!
zrMdRY{}R=1*EhEO>I@7e(%qpSx?SI3QTuvZx9b;=Zr>j%9>zRi+e=u%hMYXCnxdeZ
z!T=_@7#Q50ovjo!LX%4KN=g+h^-S~(bPY?vJi|I813d#1Jwr{1ILI9!?+P$5Fn}EI
z?ib3y#K3R>B*qMqWME(rfzpgsK@5x)0*ul;>>Lvq85m?3AQ&V)2Sm8?3A8ae^Rh8b
z=3(am31G*d@L^&2_#c}rGu9YkU|?o|xdv4iGXuz_sA3=<GuSsE7Aj_DU`G{z@|YR0
zJD8b)6RHB0VrF1N6<}Zhn=FLnesGvDFfi~iFff3^7hQue4slH!;)XcHL1`45`R+K>
zGo+{H=_NDdCT8X_6qlsrmzFTZyZiV%Ir_x=ySW9shQx<BI{CQ9GZd$mlqHp>F~rAb
z7Uw5hTE-VAC+4Lw6clCVm4HNxOA?c_<C8P8<I@r|a~R~H9%N!*VBlt8VEFSN0!*Re
zpqS!C5(l{tBn46rN_#N%fgnK!25`*sA*nBhio?`{Xpm4Xh=8i+M^ZlxNgNbDF!L3l
z;voGX4COK~=oMGymLw)I=oOa~LFfz^t0*-mQLiMmqJ%*&C9x!tK`*Jem_e^7AHqq_
z&&^HED`C*f%P&dQbN36?1qTh3pPpB$S5TB+kXlqy$)E=|DK#TLttc@!6>c>p43K|7
zc?vy6g3<-ZTv$2;u|XK57DU6aG&JmB>S5vu&@8tCDgcU8kX~3$k${S;F))BrJybbV
zl!4(6oQ28&nSm^#!@vN}edOu~<qMFRC~?VvupgA>knIDhMdn*V-EV*_$iTqx63Pd;
z56T2nF#Ryv3926~iA0FP6d;L#nCQYm(6R&F{Sr`xp!fypgJD?s!}wWH`_c7VK=oU|
z6hdiq{h(9`%A4r%&jAu-U|@j7GbsK+r6Ei|OdMnly4@hF3P2JJ3=A`%G^iZpg2pvS
r9;P2;CVJe1<T;>%5g-l{h8hPK5o7?>4{$D=p#XJ%30wriK-Uid;MCEU

literal 0
HcmV?d00001

diff --git a/lab04/main.c b/lab04/main.c
new file mode 100644
index 0000000..0304367
--- /dev/null
+++ b/lab04/main.c
@@ -0,0 +1,18 @@
+#include <stdio.h>
+//
+#include "func.h"
+
+extern int toBinaryString(char c[], int a);
+
+int Global_val = 2; 
+
+int main()
+{
+	unsigned int a,b,c;
+	char ch[256];
+	scanf("%d", &a); 
+	printf("%d / %d\n",func1(a),DF(a));
+	toBinaryString(ch, a); 
+	printf("%s\n", ch); 
+	return	a;
+}
diff --git a/lab04/main.o b/lab04/main.o
new file mode 100644
index 0000000000000000000000000000000000000000..84b6e0bbd8e30eb7a6543ab0caa5ddc6a921a519
GIT binary patch
literal 2208
zcmb<-^>JfjWMqH=Mg}_u1P><4z@Wg2U^{@B4h(z@ybPcD<$i^FbUqFCXndo=$iR@|
z(aoZ&!N9=a(dqia@PJ2e>z#l9|9f;E^XRn&Y1;uJUVw=1sUVqduzcrb{`EJY%;R9$
z&Rf{DKolSH=xu%Q@BjbKYaX2t)ldN#7h;k}x9^J-4`Uv%b4pmj#(Fd!0l6|d_Amnj
z0}}%SgK7$cYKnrsf@%sE1B1J>vz3BIXi{ljNvVRRo{64;u3;&dXIN)spl4vBXQ&Ag
zXJBDqU=UznU;qV+yI&~CtOFo1W{}qy7#KvLG-Fi|17n2%qcjgY#{@<O1{DSd1{tW_
zP7v+NC(y>^%**D{%*?cchn)i?h6jV<hK1qde{4#avBn$&12Y56Rj9g{!M;Eh1M!%_
zz5=mOF*5@@ssNP7%z)k1%nY1R6{r+50~@LU0|VFuK_qvA!V;uNn1O*o2+3dIFk@g~
zkbs6iNDVU9!yyhze4zM3RtsV~<52H~Lp&0PcpMIKhTO!=JiTNF_niEs#GLrD#2l~)
zL%h3>zmua+yuX`Uuxm(sh@+E_Ydk}Id}eWevZZBwadKi_8bexXUa}!WK~ZL2Ng6{*
zzEfsiVo_yqNl|8AIzvHeNijowd~r!)a&~-jMs|E!VrC8lgAT}3(6kLon}7a8fEiRA
z6t27s3=A;w5F~LvB=LBtI4F;R%z>El|9>V_9ApkZlKLhjaZotJ%%6xPE{LRlHIldx
zlDGm?9AqyDL%9qLdc~EwC5cH4dc`G05IO_KDoV{s)GJA?C}Ge`Ni0cZ&`T;VX3#6j
zhj5bfb8}PkN*MI=@=H?n-2Fmz!C?mFr{|UG6%^$cq!yJ_GU$O#O3jE*D@x2wg<DMt
z1LPl2o<&dbkTR5k0hXR&c7W8v*dSV(fdQOLVd_C*AbbIur4N8O3=9n13=H600?Ub@
z`~i|ugNj3ygM`5N5153Q4P}BUP`rW}Py&>mKxU%r2U`YJgG`~j-w<j)N?d|8Ko#<U
z*hm;E3>UG4>NkLkKo~qwg&_AqL?9$o816hLsD6kng0z4sL<oUd=)yq^4B%1^-Tg5A
zp!fxAgc6{zf-=EW7Sw)p{Si=$(Bl<dKPVM~;sjmY1dt%K90XYeihodP3)2sae~>lk
zc7xQ<07)<~Fr0wWpm^Ydmct-<n0}C%7;(?Qz>okH%m*n(!cgPjBA`4ERSFjaF;+m`
LUjpJFVRZcfvib}W

literal 0
HcmV?d00001

diff --git a/lab04/mem_test.c b/lab04/mem_test.c
new file mode 100644
index 0000000..593acd8
--- /dev/null
+++ b/lab04/mem_test.c
@@ -0,0 +1,12 @@
+#include <stdio.h>
+
+int main()
+{
+#ifdef __PCC_M32 
+	printf("CHAR: %d\n", sizeof(char)); 
+	printf(“%d %d \n“, 100, 100);  
+#else
+	printf("CHAR: %ld\n", sizeof(char)); 
+	printf(“%d %d \n“, 100, 100);  
+#endif
+}
diff --git a/lab04/tobin.c b/lab04/tobin.c
new file mode 100644
index 0000000..f233153
--- /dev/null
+++ b/lab04/tobin.c
@@ -0,0 +1,10 @@
+int toBinaryString(char buf[], int a) 
+{
+	int i=0;
+	for (i=0; i< 32; i++)
+	{
+		buf[i] = a  & (1<< (31-i)) ? '1' : '0'; 
+	}
+  	buf[i] = 0;
+  	return 1;
+}
diff --git a/lab04/tobin.o b/lab04/tobin.o
new file mode 100644
index 0000000000000000000000000000000000000000..9a509cc44c264891ee0fc3b22be3ab3df2ae19f0
GIT binary patch
literal 1472
zcmb<-^>JfjWMqH=Mg}_u1P><4z;J*G!FB*M9T<2RxEVh4%l!)V=zQwYS^J{1^vQA8
zKOjjc_1dJ{_0KK_28M>tgO^`*UQl*@(t4nTeWxJ<1H)_9odygH4Bf7OJd!VXbi2Or
zV7$=5(d_z%vAOn-eBCh=iDL{5J3y|AJ<Q<l>};i=5t>w*S5m5Asb`{RpletP<{8!*
z8R!|9=oxB4#6b>WU}0cj5MW?nU}a!naQ6#kU}9i601{&c%Q7&CKxxLRAO^+?0Y+&a
zc8&>*3=A?15Dbzo01>Wy0&PsrylhPAJnS4G0qhv$N*0EX|FOw3V+~mb24;|}uxMar
zfVmP?k{Rq9R51{bnSl*NVPIwkb__9)05dprKr962WME(rLUJeA?;z=t{G`l0y<~=x
ze5cI3#G=aJlA_GKbOr^G90LQ`2S`bTfkCghGPfi#i9xTpqzFQ1z*r@z6(tOMDTyVC
z40=h$#SD7M`MJ5Nc_j>bdHE%&dhULqy2T}l$=OhTdS0nsK~a7|YEelggI-Z;PNH6F
zMtoXPVs0wbatbJE1_rQi(L)ZB#u*sk{)gHDieD%bOesS3qsP<+uq-Blu3w#jfdQ19
z$knd{wI7t1kZpt650Xa~huIIKO`-ac)qvP{Km-;H(+87sWnciOE|j=uU|@IvRRBvL
zP%hZ7FgA#eh1!p<9~>zR3=9?^MMxMFR!Cfi2nGglDu%@uOwIvnpafI^l&(R!0Hz-%
z4)PCFDO4qdvH(diFfe?8a2dE57#Kiipz8;Tp~oFaiw4wCm^~md5QZ8HVuG<C11SH4
SnJ7dARDU{(C?u^S3jqMj-F)l-

literal 0
HcmV?d00001

diff --git a/lab05/func.c b/lab05/func.c
new file mode 100644
index 0000000..827bd92
--- /dev/null
+++ b/lab05/func.c
@@ -0,0 +1,8 @@
+#include "func.h"
+
+int func1(int a){
+	return a*10;
+}
+int func2(int a){
+	return a*2;
+}
diff --git a/lab05/func.h b/lab05/func.h
new file mode 100644
index 0000000..5f866f8
--- /dev/null
+++ b/lab05/func.h
@@ -0,0 +1,4 @@
+#pragma once
+#define DF(a) ((a)*(a))
+
+extern int func1(int x);
diff --git a/lab05/gen.c b/lab05/gen.c
new file mode 100644
index 0000000..392c697
--- /dev/null
+++ b/lab05/gen.c
@@ -0,0 +1,13 @@
+#include <stdio.h>
+#define AA 9999
+
+int main(void){
+	int a,b,scanf_ret;
+	setvbuf(stdout,NULL,_IOLBF,5);
+	while(1){
+		scanf_ret = scanf("%d %d",&a,&b);
+		if(scanf_ret == EOF || a==AA)break;
+		printf("%d %d\n",a,b);
+	}
+	return scanf_ret;
+}
diff --git a/lab05/main.c b/lab05/main.c
new file mode 100644
index 0000000..a89f40c
--- /dev/null
+++ b/lab05/main.c
@@ -0,0 +1,21 @@
+#include <stdio.h>
+//
+#include "func.h"
+#include "func.h"
+
+extern int toBinaryString(char c[], int a);
+
+int Global_val = 2; 
+
+int main()
+{
+	unsigned int a,b,c;
+	char ch[256];
+	scanf("%d", &a); 
+	printf("%d / %d\n",func1(a),DF(a));
+#if a > 100
+	toBinaryString(ch, a); 
+	printf("%s\n", ch); 
+#endif
+	return	a;
+}
diff --git a/lab05/mem_test.c b/lab05/mem_test.c
new file mode 100644
index 0000000..0558c7a
--- /dev/null
+++ b/lab05/mem_test.c
@@ -0,0 +1,23 @@
+#include <stdio.h>
+#define str(a) #a
+#define astr(a) bbb ## a ## aaa
+
+str(Hwanyong);
+astr(Hwanyong);
+
+int main()
+{
+	char buf[512] = "alskdj alkjd alksjd laksjd \
+laskjd laksjd alksjd la skjdla skdjals djal skdjlaksjd \
+laskjd laskjdl askjdla sdjals kdalskjd alskdj alksjd \
+laskdj alskdjal d asldkjl";
+#ifdef __PCC_M32 
+	printf("CHAR: %d\n", sizeof(char)); 
+	printf(“%d %d \n“, 100, 100);  
+#else
+#error THIS IS ERROR
+	printf("CHAR: %ld\n", sizeof(char)); 
+	printf("%d %d \n", 100, 100);  
+	printf("%d : %s\n", __LINE__, __FILE__);
+#endif
+}
diff --git a/lab05/test.c b/lab05/test.c
new file mode 100644
index 0000000..b817fe7
--- /dev/null
+++ b/lab05/test.c
@@ -0,0 +1,21 @@
+#if 0
+100 \
+200
+/* Comment */
+300 \
+400
+A A A
+#define A B
+#define B 99999999
+A
+B
+#endif
+#define HE HI
+#define LLO _THERE
+#define HELLO "HI THERE"
+#define CAT(a,b) a##b
+#define XCAT(a,b) CAT(a,b)
+#define CALL(fn) fn(HE,LLO)
+CAT(HE,LLO);
+XCAT(HE,LLO);
+CALL(CAT);
diff --git a/lab05/tobin.c b/lab05/tobin.c
new file mode 100644
index 0000000..f233153
--- /dev/null
+++ b/lab05/tobin.c
@@ -0,0 +1,10 @@
+int toBinaryString(char buf[], int a) 
+{
+	int i=0;
+	for (i=0; i< 32; i++)
+	{
+		buf[i] = a  & (1<< (31-i)) ? '1' : '0'; 
+	}
+  	buf[i] = 0;
+  	return 1;
+}
diff --git a/lab06/const_test.c b/lab06/const_test.c
new file mode 100644
index 0000000..a2d04b0
--- /dev/null
+++ b/lab06/const_test.c
@@ -0,0 +1,16 @@
+#include <stdio.h>
+
+int main()
+{
+	int a[2] = {10,10};
+	int const * b = a;
+
+	a[0] = 200; 
+	*b = 300;
+	b = &a[1];
+
+	printf("%d %d\n",a[0],a[1]);
+}
+	
+// 10 10
+// 0x7fffb2841630 10 0x7fffb2841628 8
diff --git a/lab07/funcp.c b/lab07/funcp.c
new file mode 100644
index 0000000..a329069
--- /dev/null
+++ b/lab07/funcp.c
@@ -0,0 +1,36 @@
+#include <stdio.h>
+
+int add(int a, int b)
+{
+	return a+b;
+}
+
+int mul (int a, int b)
+{
+	return a*b;
+}
+int sq (float a)
+{
+	return (int) (a*a);
+}
+
+int main()
+{
+	char op;
+	int a,b;
+	int fnum=0;
+	
+	int (*ff[3])() = {add, mul, sq};
+
+
+	scanf("%c %d %d", &op, &a, &b);
+	if (op =='+')
+		fnum = 0;
+	else if (op == '*')
+		fnum = 1;
+	else
+		fnum = 2;
+	printf("%d\n", ff[fnum](a,b));
+	return 0;
+}
+
diff --git a/lab07/po2.c b/lab07/po2.c
new file mode 100644
index 0000000..c6f770e
--- /dev/null
+++ b/lab07/po2.c
@@ -0,0 +1,19 @@
+#include <stdio.h>
+#include <stdlib.h>
+int func(int **p)
+{
+	printf("Func:     %p %p %p\n",*p, p, &p);
+	*p = (int *) malloc(8);
+	(*p)[0] = 500;
+	printf("Func:%d %p %p %p\n",**p, *p, p, &p);
+	return 0;
+}
+
+int main()
+{
+	int 	*ppp=NULL;
+	printf("Main:%p %p\n", ppp, &ppp);
+	func (&ppp);
+	printf("Main:%d %p %p\n",*ppp, ppp, &ppp);
+	return 0;
+}
diff --git a/lab07/pointer.c b/lab07/pointer.c
new file mode 100644
index 0000000..18216ac
--- /dev/null
+++ b/lab07/pointer.c
@@ -0,0 +1,22 @@
+#include <stdio.h>
+int func(int a)
+{
+	static int counter = 0; 
+	int b = 999; 
+	int c = 1000; 
+	counter++;
+	fprintf(stderr,"func(): %d %p %p %p %p\n", counter, &counter, &a, &b,&c); 
+	if (counter < 10)
+		func(counter); 
+	return a * 10;
+}
+
+int main()
+{
+	int 	z = 200;
+	int 	a[2] = {10,10};
+	int 	*a0;
+	a0 = &a[0]; 
+	printf("%p %p %p\n", a0, &a, &a0);
+}
+	
-- 
GitLab