(๋๊ฐ ๊ธฐ์ต๋๋๋๋ก)
- ๋๋ถ๋ถ ์ฐ๋ฆฌ๊ฐ ์ฐ๋ ์ธ์ด๋ imperative language ์ด๋ค. ์ ๊ทธ๋ด๊น?
- PL/1 ์ด ์คํจํ ์ด์ ๋?
- Compilation ๊ณผ pure interpretion ์ ๋น๊ตํ์์ค.
- C / C++ ์์์ ์คํธ๋ง์ ๊ธธ์ด๋ ๊ฐ๋ณ์ ์ธ๊ฐ?
- ๋ค์๊ณผ ๊ฐ์ ๋ฌธ๋ฒ์ด ์๋ค. Top-Down Parsing ์ ๊ฐ๋ฅ ๋๋ ๋ถ๊ฐ๋ฅํจ์ ์ฆ๋ช
ํ์์ค
A -> BaA |
B -> b | bA |
<assign> -> <id> = <expr> |
<expr> -> <term> + <factor> |
<factor> -> <id> | (<expr>) |
๋ค์๊ณผ ๊ฐ์ ์์ด ์๋ค.
A = B + C * D |
- ์์ ์์ ๋ฌธ๋ฒ์ ๋ง๊ฒ left-most ๋ก ์ ๋ํ์์ค.
- B = 6, C = 4, D = -2 ๋ผ๊ณ ํ์๋ ์์ ๋ฌธ๋ฒ์ ์ํ๋ฉด A ์ ๊ฐ์ ๋ฌด์์ธ๊ฐ?
- Type ์ด ๊ฒฐ์ ์ง๋ ์์๋ค์๋ ์ด๋ค ๊ฒ์ด ์๋๊ฐ?
- FORTRAN, PL/1, BASIC, Perl ์ด ์ธ์ด๋ค์ ๋ณ์ ์ ์ธ์์ ๊ณตํต์ ์?
- Perl ์ ๋ณ์์ ๋ํด์ ์์ ์ธ์ด๋ค๊ณผ ๋ค๋ฅธ ์ ์ด ์๋ค. ์ด๋ค ์ ์ธ๊ฐ?
- Primitive Data Type ์ ๋ํด ์ ์ํ์์ค.
- Floating Point ๋ณ์์ ๊ฒฝ์ฐ ํด๋น ๊ฐ์ ๋ํด ๊ทผ์ฌ๊ฐ๋ง์ ํํํ๋ค. ๊ทธ ์ด์ ๋ ๋ฌด์์ธ๊ฐ?
- ๋ค๋ฅธ Primitive Data Type ์ ์ด์ฉ, ์ ํํ๊ฒ Floating Point ๋ฅผ ๊ตฌํํ ๋ฐฉ๋ฒ์ด ์์๊น? (์์ ์ ์๊ฒฌ์ ์ ์ผ์์ค)
Thread ¶
๊ณต๋ถํ ๋ ๊ฐ ์์๋ค์ ๋ํ ๋น๊ต ํ ๋๋ง๋ค Ada ๋ฅผ ๋นผ๋์ง ์๊ธฐ์ (๋ ์ฑ
์์์ ๋น๊ต์ธ์ด๋ C/C++, Pascal, Ada, Java ์ด๋ค) ์ฃผ๋ก ์ธ๊ธ๋ ์ธ์ด๋ค๋ง ๊ณต๋ถํ๊ฑด๋ง, ์ ๋ฌ๊ธ์์ด PL/1 ์ ๋ด์ ๊ฑธ๊น; ๊ทธ๋ฐ์ ๋ค๋ฅธ ๋ฌธ์ ๋ค์ ํ์ดํด์ ๊ทธ๋ค์ง ๋ณ ๊ฐํฅ(?)์์๊ณ , ๋ง์ง๋ง ๋ฌธ์ ๊ฐ ๊ด์ฐฎ์๋๋ฏ.
๋์ ๊ฒฝ์ฐ๋ 1. string (char array) ์ผ๋ก ์ ๋ฎฌ๋ ์ด์
ํ๋ค. (๋จ์ ๋ ์ผ์. ๊ณ์ฐ๋ค์ ๋ฉ๋ชจ๋ฆฌํ ๋น ๋ฌธ์ ์ ์ค์ ์ฐ์ ์ฐ์ฐ ๊ณ์ฐ์ ์ํ ํ๋ณํ์ cost๊ฐ ๋ง์ด ๋ ๋ค ๋ฑ๋ฑ) 2. long integer 2 ๊ฐ๋ก ์์ 32 bit ๋ ์ ํจ์ซ์๋ฅผ, ๋ค์ 32bit ๋ ์ง์๋ฅผ ํํํ๋ค. (2^-31 ~ 2^31 * 2^-31 ~ 2^31 ๊น์ง ํํ๋๋ค๋ผ๊ณ ์ผ๋๋ฐ, ์ค์ ๋ก ์ ์ซ์๋ค์ ๋ค ํํํ ์๊ฐ ์๊ฒ ๊ตฐ. 2^31 1024 * 1024 * 1024 * 2 ๋๊น ์ฝ 10์ต. ์ฆ, ์๋ฆฌ์ ํํ๋ 10์ต ์ดํ๋ถํฐ๋ precision ์ ํจ์ซ์๋ฅผ ๋ค ์ธ์ ์์ํ
๋) ์.. ํ๊ณ ๋๋ ์๋ชป์๊ฐํ๊ตฐ. ํ; --์์ฒ