๋ณธ๋ฌธ ๋ฐ”๋กœ๊ฐ€๊ธฐ

๋ฆฌ๋ฒ„์Šค2

๋ฆฌ๋ฒ„์Šค ์—”์ง€๋‹ˆ์–ด๋ง: ์–ด์…ˆ๋ธ”๋ฆฌ (ํ•จ์ˆ˜) ๊นŒ๋ง‰๋ˆˆ์ด๋‹ค.ใ‚ท์ด๋ฒˆ ๊ธ€์—์„œ๋Š” ๋ฆฌ๋ฒ„์‹ฑ์— ํ•„์š”ํ•œ ์–ด์…ˆ๋ธ”๋ฆฌ ๋‚ด์šฉ ์ค‘ ํ•จ์ˆ˜ ๋ถ€๋ถ„์„ ๋‹ค๋ฃจ๊ณ ์ž ํ•œ๋‹ค.'๊ฐ•๋ณ‘ํƒ, ใ€Ž๋ฆฌ๋ฒ„์Šค ์—”์ง€๋‹ˆ์–ด๋ง ๋ฐ”์ด๋ธ”ใ€, ์œ„ํ‚ค๋ถ์Šค, 2014, 1p-127p.'์„ ์ฐธ๊ณ ํ–ˆ๋‹ค. ํ•จ์ˆ˜์˜ ๊ธฐ๋ณธ ๊ตฌ์กฐํ•จ์ˆ˜์˜ ์‹œ์ž‘push ebpmov ebp, esp ebp๋Š” ์Šคํƒ ๋ฒ ์ด์Šค ํฌ์ธํ„ฐ๋‹ค.push ebp๋Š” ์ง€๊ธˆ๊นŒ์ง€์˜ ๋ฒ ์ด์Šค ์ฃผ์†Œ๋ฅผ ์Šคํƒ์— ๋ณด๊ด€ํ•˜๊ธฐ ์œ„ํ•ด ํ•„์š”ํ•˜๋‹ค.์ด๋ ‡๊ฒŒ ๋ฒ ์ด์Šค ํฌ์ธํ„ฐ๋ฅผ ๋ฐฑ์—…ํ•œ ๋’ค, mov ebp, esp๋ฅผ ํ†ตํ•ด ์Šคํƒ ํฌ์ธํ„ฐ์ธ esp๋ฅผ ebp๋กœ ๋ฐ”๊พผ๋‹ค.์ƒˆ๋กœ์šด ํฌ์ธํ„ฐ๋ฅผ ๋ฒ ์ด์Šค๋กœ ์žก๋Š”๋‹ค๊ณ  ํ•  ์ˆ˜ ์žˆ๋‹ค. * ํ•จ์ˆ˜์˜ ์‹œ์ž‘๊ณผ ๋ ์ค‘๊ฐ„์— rsp๋กœ ํ• ๋‹น๋œ ๋ฐ”์ดํŠธ๋งŒํผ์˜ ๊ณต๊ฐ„์„ ํ™•๋ณดํ•œ๋‹ค.ex:) 'sub rsp, 0x100' ํ•จ์ˆ˜์˜ ๋mov esp, ebppop ebpํ•จ์ˆ˜๊ฐ€ ์ข…๋ฃŒ๋  ๋•Œ๋Š” ์ง€๊ธˆ๊นŒ์ง€ ์‚ฌ์šฉํ•œ ์Šคํƒ ์œ„์น˜๋ฅผ ์›๋ž˜๋Œ€.. 2023. 8. 3.
๋ฆฌ๋ฒ„์Šค ์—”์ง€๋‹ˆ์–ด๋ง: ์–ด์…ˆ๋ธ”๋ฆฌ (๋ ˆ์ง€์Šคํ„ฐ, ์˜ต์ฝ”๋“œ) ๊นŒ๋ง‰๋ˆˆ์ด๋‹ค.ใ‚ท์ง€๊ธˆ๋ถ€ํ„ฐ ๋ณด์•ˆ ๊ด€๋ จ ๋™์•„๋ฆฌ ํ™œ๋™ ๋ฐ ์ฑ…์„ ํ†ตํ•ด ๋ฐฐ์šด ๋ฆฌ๋ฒ„์Šค ์—”์ง€๋‹ˆ์–ด๋ง ๊ณต๋ถ€ ๋‚ด์šฉ์„ ๊ธฐ๋กํ•˜๊ณ ์ž ํ•œ๋‹ค.์˜ค๋Š˜์€ ๋ฆฌ๋ฒ„์Šค ์—”์ง€๋‹ˆ์–ด๋ง์— ํ•„์š”ํ•œ ์–ด์…ˆ๋ธ”๋ฆฌ ๊ด€๋ จ ์ง€์‹์„ ์ •๋ฆฌํ–ˆ๋‹ค.'๊ฐ•๋ณ‘ํƒ, ใ€Ž๋ฆฌ๋ฒ„์Šค ์—”์ง€๋‹ˆ์–ด๋ง ๋ฐ”์ด๋ธ”: ์ฝ”๋“œ ์žฌ์ฐฝ์กฐ์˜ ๋ฏธํ•™ใ€, ์œ„ํ‚ค๋ถ์Šค, 2014, 1p-127p.'์„ ์ฐธ๊ณ ํ–ˆ๋‹ค.๋‚ด์šฉ์€ ์–ด์…ˆ๋ธ”๋ฆฌ ์–ธ์–ด ๊ตฌ์กฐ, ๋ ˆ์ง€์Šคํ„ฐ, ์˜ต์ฝ”๋“œ, ์Šคํƒ ์‚ฌ์šฉ ์‹œ ์ฝ”๋“œ ์ˆœ์„œ์ด๋‹ค. ์–ด์…ˆ๋ธ”๋ฆฌ์˜ ์–ธ์–ด ๊ตฌ์กฐ ์–ด์…ˆ๋ธ”๋ฆฌ๋Š” ํ•œ ๋ฒˆ์— ํ•œ ๊ฐ€์ง€ ๋™์ž‘๋ฐ–์— ํ•˜์ง€ ๋ชปํ•œ๋‹ค์ฃผ๋กœ ์‚ฌ์šฉํ•˜๋Š” ์–ด์…ˆ๋ธ”๋ฆฌ์ธ IA-32์˜ ๊ธฐ๋ณธ ํ˜•ํƒœ๋Š” ์•„๋ž˜์™€ ๊ฐ™๋‹ค."๋ช…๋ น์–ด(์˜ต์ฝ”๋“œ, opcode) + ์ธ์ž(์˜คํผ๋žœ๋“œ,operand)"์˜คํผ๋žœ๋“œ๊ฐ€ ๋‘ ๊ฐœ์ผ ๋•Œ ์•ž์˜ ์˜คํผ๋žœ๋“œ๋ฅผ destination(des), ๋’ค์˜ ์˜คํผ๋žœ๋“œ๋ฅผ source(src)๋กœ ๋ถ€๋ฅธ๋‹ค.  ๋ ˆ์ง€์Šคํ„ฐ ๋ ˆ์ง€์Šคํ„ฐ๋ž€ ๋ฐ์ดํ„ฐ.. 2023. 8. 2.