https://lucete1230-cyberpolice.tistory.com/45
์ ๋ฒ ์๊ฐ์ ํตํด ๋ ์ง์คํฐ์ ๋ํด ๊ณต๋ถํ๊ณ !
์ด๋ฒ์๋ ๊ทธ ๋ ์ง์คํฐ๋ค์ ์ด์ฉํ ์ฌ์น์ฐ์ฐ ๊ณ์ฐ๊ธฐ๋ฅผ
๋ง๋ค์ด ๋ณด๋๋ก ํ ๊ป์ ใ
ใ
์ฝ๋ ์์ ๋ชจ๋ ์ค๋ช
์ ์ฃผ์์ผ๋ก ๋ฌ์๋์๊ธฐ ๋๋ฌธ์ ๋ณ๋ค๋ฅธ ์ค๋ช
์์ด
๋ฐ๋ก ๊ฐ๋๋ก ํ๊ฒ ์ต๋๋ค!
๋จผ์ ๊ฐ๋จํ ์ฌ์น ์ฐ์ฐ์ ๋ํ ์ค๋ช
ํด๋๋ฆฐ ํ ์ฝ๋๋ฅผ ๋ณด์ฌ๋๋ฆด๊ป์!
๋ํ๊ธฐ/๋นผ๊ธฐ ์ฐ์ฐ
- a = ๋ ์ง์คํฐ ๋๋ ๋ฉ๋ชจ๋ฆฌ์ ์๋ ๊ฐ
- b = ๋ ์ง์คํฐ, ๋ฉ๋ชจ๋ฆฌ, ๊ฐ
- a,b ๋ชจ๋ ๋ฉ๋ชจ๋ฆฌ์ธ ๊ฒฝ์ฐ๋ ํ์ฉ X
- a = a+b // a=a-b
๋นผ๊ธฐ ์ฐ์ฐ์ ๋ํ๊ธฐ์ ๋ฌธ๋ฒ์ ํํ๊ฐ ๋์ผํฉ๋๋ค. (sub)
๊ณฑํ๊ธฐ/๋๋๊ธฐ ์ฐ์ฐ
<<๊ณฑํ๊ธฐ>>
- para๊ฐ 1byte ์ผ ๋ : AX = AL * para (bl์ ๊ณฑํ๋ ๊ฐ์ ๋ฃ๋ ๊ฒฝ์ฐ๊ฐ ๋ง๋ค.)
- para๋ ๋ ์ง์คํฐ๋ง ํ์ฉ
- ๊ณฑํด์ง๋ ๊ฒฐ๊ณผ๋ ๋ฐ๋์ AL๋ ์ง์คํฐ์ ๋ฃ์ด์ผ ํ๋ค. -->1byte๋ก ์ฃผ์๊ธฐ ๋๋ฌธ (AL=8bit)
- ์ฐ์ฐ ๊ฒฐ๊ณผ๋ ๋ฌด์กฐ๊ฑด AX๋ ์ง์คํฐ๋ก ๋ฆฌํด (AX=2byte/16bit)
<<๋๋๊ธฐ>>
- para๊ฐ 1byte ์ผ ๋ : AX = AL/para ; AL(๋ชซ), AH(๋๋จธ์ง)
- para๋ ๋ ์ง์คํฐ๋ง ํ์ฉ
- ๋๋์ด์ง๋ ๊ฐ(ํผ์ ์)์ ๋ฐ๋์ AX๋ ์ง์คํฐ์ ๋ฃ์ด์ผ ํจ.
- ์ฐ์ฐ ๊ฒฐ๊ณผ๋ ๋ฌด์กฐ๊ฑด AL, AH ๋ ์ง์คํฐ๋ก ๋ฆฌํด
- AH๋ ์ง์คํฐ๋ AL์ด ์์ด ์ถ๋ ฅ์ด ๋ถ๊ฐ๋ฅํ๊ธฐ ๋๋ฌธ์(์ผ์ชฝ์ ์์น) --> BL๋ ์ง์คํฐ๋ก ์ฎ๊ธด ํ ์ถ๋ ฅํด์ค๋ค.
โป ์ฝ๋๋ฅผ ๋ณด์๋ฉด ์ธ๋ฏธ์ฝ๋ก ์ ์ค์๋ก ๋ถ์ฌ๋จ๋๋ฐ ํ์ฐธ C์ธ์ด์ ํจ๊ป ๊ณต๋ถํ๋๋ผ ํท๊ฐ๋ ธ๋๋ด์ใ
ใ
ใ
์ฃ์กํฉ๋๋ค.
์ด์
๋ธ๋ฆฌ์ด๋ฅผ ์ฌ์ฉํ์๋ฉด ์์๊ฒ ์ง๋ง ์ธ๋ฏธ์ฝ๋ก ์ ์ฃผ์์ฉ๋๋ก ์ฌ์ฉ๋ฉ๋๋ค.
์ฝ๋๋ณด๊ธฐ
์ฐ์ฐ์ด ์ด๋ป๊ฒ ์ด๋ฃจ์ด ์ง๋์ง, ๊ทธ๋ฆฌ๊ณ ๊ฐ์ด ๋ ์ง์คํฐ์ ์ด๋ค ๊ณต๊ฐ์ ๋ค์ด๊ฐ๋์ง
์ ์ดํด๊ฐ ์๋์๋ ๋ถ๋ค์
Debugging ์ ํ์
์ (๋ธ๋ ์ดํฌ ํฌ์ธํธ๋ก ๋ฉ์ถฐ์ค) ํ์ค์ฉ ๋ ์ง์คํฐ ๊ฐ ๋ณํ๋ฅผ ๋ณด์๋ฉฐ,
๊ณต๋ถํ๋ ๊ฒ์ ์ถ์ฒ๋๋ฆฝ๋๋ค!!
CTRL + R ์ ๋๋ฌ์ฃผ์๋ฉด ๋ ์ง์คํฐ ์ฐฝ์ด๋จ๊ณ , F10์ ๋๋ฌ์ฃผ์๋ฉด
ํ ์ค์ฉ ์ด๋ํฉ๋๋ค.
์ค๋์ ์ฌ๊ธฐ๊น์ง ! ๊ทธ๋ผ ์ด๋ง~^^