AssemblyLab๋ iPhone, iPad, Mac์ ์ํ ๊ฐ๋ ฅํ x86 16๋นํธ ๋ฆฌ์ผ ๋ชจ๋ ์ด์
๋ธ๋ฆฌ ์ธ์ด ์๋ฎฌ๋ ์ดํฐ์
๋๋ค. ๋ณต์กํ ์ค์ ์์ด ์ธ์ ์ด๋์๋ ์ด์
๋ธ๋ฆฌ ํ๋ก๊ทธ๋๋ฐ์ ํ์ตํ๊ณ ์ค์ตํ ์ ์์ต๋๋ค.
ใํต์ฌ ๊ธฐ๋ฅใ
โข 60๊ฐ ์ด์์ ๋ช
๋ น์ด๋ฅผ ๊ฐ์ถ ์๋ฒฝํ x86 16๋นํธ CPU ์๋ฎฌ๋ ์ด์
โข NASM ๋ฌธ๋ฒ ์ด์
๋ธ๋ฌ โ ์ฆ์ ์์ฑํ๊ณ ์คํ
โข ๋จธ์ ์ฝ๋๋ฅผ ์ดํดํ ์ ์๋ ์ค์๊ฐ ๋์ค์ด์
๋ธ๋ฆฌ ๋ทฐ
โข 1MB ์ ์ฒด ๋ฉ๋ชจ๋ฆฌ ๊ณต๊ฐ, ์ ํต ๋ฆฌ์ผ ๋ชจ๋ ์๋ฎฌ๋ ์ด์
ใ๊ฐ๋ ฅํ ๋๋ฒ๊น
๋๊ตฌใ
โข ์ค๋จ์ ์ค์ ๋ฐ ์ฝ๋ ๋จ๊ณ๋ณ ์คํ
โข ์ค์๊ฐ ๋ ์ง์คํฐ ๋ชจ๋ํฐ๋ง (AX/BX/CX/DX/SP/BP/SI/DI)
โข ์๊ฐ์ FLAGS ํ์๊ธฐ
โข 16์ง์ ๋ทฐ ๋ฐ ํธ์ง์ด ๊ฐ๋ฅํ ๋ฉ๋ชจ๋ฆฌ ๋ธ๋ผ์ฐ์
โข ๋ชจ๋ ๋ช
๋ น์ด๋ฅผ ์ถ์ ํ๋ ์คํ ๋ก๊ทธ
ใBIOS/DOS ์ธํฐ๋ฝํธ ์ง์ใ
โข INT 10h ๋น๋์ค ์๋น์ค: ์ปค์ ์ ์ด, ๋ฌธ์ ์ถ๋ ฅ, ํ๋ฉด ์คํฌ๋กค
โข INT 21h DOS ์๋น์ค: ํค๋ณด๋ ์
๋ ฅ, ๋ฌธ์์ด ์ถ๋ ฅ, ํ๋ก๊ทธ๋จ ์ข
๋ฃ
ใํ์ต ์นํ์ ใ
โข Hello World๋ถํฐ ์๊ณ ๋ฆฌ์ฆ๊น์ง ๋ด์ฅ๋ ์์ ํ๋ก๊ทธ๋จ
โข ๊ตฌ๋ฌธ ๊ฐ์กฐ ์ฝ๋ ์๋ํฐ
โข ์ฆ๊ฐ์ ์ธ ํผ๋๋ฐฑ์ ์ํ ์ฝ์ ์ถ๋ ฅ
โข .COM ํ์ผ ๋ก๋ ๋ฐ ์คํ
ใํฌ๋ก์ค ํ๋ซํผ ๊ฒฝํใ
โข iPhone: ์ต์ ํ๋ ์ธ๋ก ๋ ์ด์์
โข iPad: ๋ํ๋ฉด์ ์ํ ๋ถํ ๋ทฐ ์ธํฐํ์ด์ค
โข Mac: ํค๋ณด๋ ๋จ์ถํค๋ฅผ ์ง์ํ๋ ๋ค์ดํฐ๋ธ ์ฑ
์ ํฉํ ์ฌ์ฉ์:
- ์ปดํจํฐ ๊ณผํ ํ์
- ์ด์ ์ฒด์ ๊ณผ์ ํ์ต์
- ๋ฆฌ๋ฒ์ค ์์ง๋์ด๋ง ์
๋ฌธ์
- ๋ ํธ๋ก ์ปดํจํ
์ ํธ๊ฐ
- ๋ก์ฐ ๋ ๋ฒจ ํ๋ก๊ทธ๋๋ฐ์ ๊ด์ฌ ์๋ ๊ฐ๋ฐ์
AssemblyLab๋ ์ปดํจํฐ๊ฐ ์ค์ ๋ก ์ด๋ป๊ฒ ์๋ํ๋์ง ๊ฐ์ฅ ๋ฎ์ ์์ค์์ ํ๊ตฌํ ์ ์๋ ์ด์์ ์ธ ๋๋ฐ์์
๋๋ค.
์ง๊ธ ๋ค์ด๋ก๋ํ๊ณ ์ด์
๋ธ๋ฆฌ ์ฌ์ ์ ์์ํ์ธ์!
AssemblyLab๋ iPhone, iPad, Mac์ ์ํ ๊ฐ๋ ฅํ x86 16๋นํธ ๋ฆฌ์ผ ๋ชจ๋ ์ด์
๋ธ๋ฆฌ ์ธ์ด ์๋ฎฌ๋ ์ดํฐ์
๋๋ค. ๋ณต์กํ ์ค์ ์์ด ์ธ์ ์ด๋์๋ ์ด์
๋ธ๋ฆฌ ํ๋ก๊ทธ๋๋ฐ์...