0613


# 0613

# IEEE 754 ํ‘œ์ค€

# ๊ณ ์ •์†Œ์ˆ˜์ ๊ณผ ๋ถ€๋™์†Œ์ˆ˜์ 

์ปดํ“จํ„ฐ์—์„œ ์‹ค์ˆ˜๋ฅผ ์ €์žฅํ• ๋•Œ๋Š” ๊ณ ์ •์†Œ์ˆ˜์  ๋ฐฉ์‹๊ณผ ๋ถ€๋™์†Œ์ˆ˜์  ๋ฐฉ์‹์ด ์žˆ๋‹ค.

# ๊ณ ์ •์†Œ์ˆ˜์ 

  • ์ •์ˆ˜๋ฅผ ํ‘œํ˜„ํ•˜๋Š” ๋น„ํŠธ ์ˆ˜์™€ ์†Œ์ˆ˜๋ฅผ ํ‘œํ˜„ํ•˜๋Š” ๋น„ํŠธ ์ˆ˜๋ฅผ ๋ฏธ๋ฆฌ ์ •ํ•ด๋†“๊ณ , ํ•ด๋‹น ๋น„ํŠธ๋งŒํผ๋งŒ ์‚ฌ์šฉํ•ด์„œ ์ˆซ์ž๋ฅผ ํ‘œํ˜„ํ•˜๋Š” ๋ฐฉ์‹์ด๋‹ค.
  • ์ •์ˆ˜๋ถ€์™€ ์†Œ์ˆ˜๋ถ€์˜ ์ž๋ฆฟ์ˆ˜๊ฐ€ ํฌ์ง€ ์•Š์œผ๋ฏ€๋กœ, ํ‘œํ˜„ํ•  ์ˆ˜ ์žˆ๋Š” ๋ฒ”์œ„๊ฐ€ ๋งค์šฐ ์ ๋‹ค๋Š” ๋‹จ์ ์ด ์žˆ๋‹ค.

# ๋ถ€๋™์†Œ์ˆ˜์ 

  • ์‹ค์ˆ˜๋ฅผ ํ‘œํ˜„ํ•  ๋•Œ ์†Œ์ˆ˜์ ์˜ ์œ„์น˜๋ฅผ ๊ณ ์ •ํ•˜์ง€ ์•Š๊ณ  ๊ทธ ์œ„์น˜๋ฅผ ๋‚˜ํƒ€๋‚ด๋Š” ์ˆ˜๋ฅผ ๋”ฐ๋กœ ์ ๋Š” ๋ฐฉ์‹์ด๋‹ค.
  • ๋ถ€๋™์†Œ์ˆ˜์ ์—์„œ ๋ถ€๋™์€ ์›€์ง์ด์ง€ ์•Š๋Š”๋‹ค๋Š” ๋œป์˜ ๏ฅงๅ‹•์ด ์•„๋‹ˆ๋ผ, ์˜คํžˆ๋ ค ๊ทธ ๋ฐ˜๋Œ€์˜ ์˜๋ฏธ๋กœ ์†Œ์ˆ˜์ ์ด ๋– ๋‹ค๋‹ˆ๋ฉฐ ์›€์ง์ธ๋‹ค๋Š” ์˜๋ฏธ์˜ ๋ถ€๋™ (ๆตฎๅ‹•)์ด๋‹ค.
  • ์ผ๋ฐ˜์ ์œผ๋กœ IEEE 754 ํ‘œ์ค€๋ฐฉ์‹์„ ๋”ฐ๋ฅธ๋‹ค.

# IEEE

  • IEEE๋Š” ์ „๊ธฐ์ „์ž๊ณตํ•™์žํ˜‘ํšŒ(Institute of Electrical and Electronics Engineers, IEEE)์˜ ์•ฝ์ž๋กœ ์ „๊ธฐ์ „์ž๊ณตํ•™ ์ „๋ฌธ๊ฐ€๋“ค์˜ ๊ตญ์ œ์กฐ์ง์ด๋‹ค.
  • IEEE๋Š” ๋ฐœ์Œํ•˜๊ธฐ ์‚ด์ง ์–ด๋ ค์šด ์ธก๋ฉด์ด ์žˆ์–ด ์ผ๋ฐ˜์ ์œผ๋กœ 'I-triple-E(์•„์ด ํŠธ๋ฆฌํ”Œ ์ด)'๋ผ๊ณ  ๋ฐœ์Œํ•œ๋‹ค.

# IEEE 754 ํ‘œ์ค€

  • IEEE 754 ํ‘œ์ค€์€ ๋ถ€๋™์†Œ์ˆ˜์ ์„ ์ €์žฅํ•˜๊ณ  ์ฒ˜๋ฆฌํ•˜๋Š” ๋ฐฉ๋ฒ•์„ ํ‘œ์ค€ํ™”ํ•˜์—ฌ ์ปดํ“จํ„ฐ์—์„œ ๋ถ€๋™์†Œ์ˆ˜์ ์„ ์‚ฌ์šฉํ•  ๋•Œ ์ผ๊ด€์„ฑ์„ ๋ณด์žฅํ•˜๊ธฐ ์œ„ํ•ด ํ•„์š”ํ•˜๋ฉฐ ๊ฐ€์žฅ ๋„๋ฆฌ ์“ฐ์ด๋Š” ํ‘œ์ค€์ด๋‹ค.
  • ์‹ค์ˆ˜ ํ‘œ๊ธฐ ๋ฐฉ์‹, ์‹ค์ˆ˜ ์—ฐ์‚ฐ์— ๊ด€ํ•œ ๊ทœ์ •, ์˜ค๋ฒ„ํ”Œ๋กœ์šฐ/์–ธ๋”ํ”Œ๋กœ์šฐ์˜ ์ฒ˜๋ฆฌ, ๋ฐ˜์˜ฌ๋ฆผ์— ๊ด€ํ•œ ๊ทœ์ • ๋“ฑ์„ ํฌํ•จํ•˜๋Š” ํ‘œ์ค€์ด๋‹ค.
  • IEEE 754 ํ‘œ์ค€์—๋Š” 32๋น„ํŠธ(float - ๋‹จ๋ฐ€๋„, ํ•„์ˆ˜๊ตฌํ˜„) ํ˜•์‹ ๋ฟ ์•„๋‹ˆ๋ผ 64๋น„ํŠธ(double - ๋ฐฐ๋ฐ€๋„) ๋“ฑ ํƒ€ ํ˜•์‹๋“ค๋„ ์ •์˜๋˜์–ด ์žˆ๋‹ค.
  • ์ดˆ๊ธฐ์—๋Š” ๋ถ€๋™์†Œ์ˆ˜์ ์„ ํ‘œํ˜„ํ•˜๊ธฐ ์œ„ํ•˜์—ฌ ์ปดํ“จํ„ฐ๋งˆ๋‹ค ์—ฌ๋Ÿฌ ๊ฐ€์ง€ ์„œ๋กœ ๋‹ค๋ฅธ ํ˜•์‹์„ ์‚ฌ์šฉํ•˜์˜€์œผ๋‚˜, ํ˜„์žฌ๋Š” ๊ฑฐ์˜ ๋Œ€๋ถ€๋ถ„์˜ ์ปดํ“จํ„ฐ๋“ค์ด ํ˜ธํ™˜์„ฑ์„ ์œ„ํ•ด IEEE 754 ํ‘œ์ค€์„ ์‚ฌ์šฉํ•˜๊ณ  ์žˆ๋‹ค.

# ํ˜•์‹

32๋น„ํŠธ ๋‹จ์ •๋„ (single precision) ๋ถ€๋™์†Œ์ˆ˜์  ํ‘œํ˜„

  • ๋ถ€๋™ ์†Œ์ˆ˜์ ์€ ๋ถ€ํ˜ธ๋ถ€, ์ง€์ˆ˜๋ถ€, ๊ฐ€์ˆ˜๋ถ€๋กœ ๋‚˜๋‰œ๋‹ค.
    • ๋ถ€ํ˜ธ๋ถ€ (Sign) : 1๋น„ํŠธ. ์ˆซ์ž์˜ ๋ถ€ํ˜ธ๋ฅผ ๋‚˜ํƒ€๋‚ด๋ฉฐ, ์–‘์ˆ˜์ผ ๋•Œ 0, ์Œ์ˆ˜์ผ ๋•Œ1์ด ๋ฉ๋‹ˆ๋‹ค.
    • ์ง€์ˆ˜๋ถ€ (Exponent) : ๋‹จ์ •๋„์˜ ๊ฒฝ์šฐ 8๋น„ํŠธ, ๋ฐฐ์ •๋„์˜ ๊ฒฝ์šฐ 11๋น„ํŠธ. ์ง€์ˆ˜๋ฅผ ๋‚˜ํƒ€๋ƒ…๋‹ˆ๋‹ค.
    • ๊ฐ€์ˆ˜๋ถ€ (Mantissa, fraction, significant) : ๋‹จ์ •๋„์˜ ๊ฒฝ์šฐ 23๋น„ํŠธ, ๋ฐฐ์ •๋„์˜ ๊ฒฝ์šฐ 52๋น„ํŠธ. ๊ฐ€์ˆ˜ ๋˜๋Š” ์œ ํšจ์ˆซ์ž๋ฅผ ๋‚˜ํƒ€๋ƒ…๋‹ˆ๋‹ค.
  • 32๋น„ํŠธ ๋‹จ์ •๋„(single)๊ฐ€ ๊ธฐ๋ณธ์ด๋ฉฐ, ๋น„ํŠธ ์ˆ˜๋ฅผ ๋‘ ๋ฐฐํ™•์žฅํ–ˆ๋‹ค๊ณ  ํ•ด์„œ 64๋น„ํŠธ ๋ฐฐ์ •๋„(double) ๋ฐฉ์‹๋„ ์žˆ๋‹ค.
    • ๋‹จ์ •๋„ (๋‹จ ์ •๋ฐ€๋„) : (๋ถ€ํ˜ธ๋ถ€ 1 ๋น„ํŠธ, ์ง€์ˆ˜๋ถ€ 8 ๋น„ํŠธ, ๊ฐ€์ˆ˜๋ถ€ 23๋น„ํŠธ)
    • ๋ฐฐ์ •๋„ (๋ฐฐ ์ •๋ฐ€๋„) : (๋ถ€ํ˜ธ๋ถ€ 1 ๋น„ํŠธ, ์ง€์ˆ˜๋ถ€ 11 ๋น„ํŠธ, ๊ฐ€์ˆ˜๋ถ€ 52 ๋น„ํŠธ)
  • ๋ฐฐ์ •๋„๋ฅผ ์‚ฌ์šฉํ•˜๋ฉด ๊ฐ€์ˆ˜ ๋ถ€๋ถ„์˜ ์ž๋ฆฌ์ˆ˜๊ฐ€ ๋งŽ์œผ๋ฏ€๋กœ, ๋ฐ˜์˜ฌ๋ฆผ ์˜ค์ฐจ ๋“ฑ์„ ์ค„์ผ ์ˆ˜ ์žˆ์œผ๋‚˜, ๋‹จ ์ •๋ฐ€๋„์— ๋น„ํ•ด 2๋ฐฐ ์ด์ƒ์˜ ๋ฉ”๋ชจ๋ฆฌ ๋ฐ ๊ณ„์‚ฐ์‹œ๊ฐ„์ด ํ•„์š”ํ•จ

# ๋ฐฉ๋ฒ•

  1. ๋ถ€ํ˜ธ ๋ถ€๋ถ„์€ ์–‘์ˆ˜์ผ ๊ฒฝ์šฐ 0, ์Œ์ˆ˜์ผ ๊ฒฝ์šฐ 1๋กœ ํ‘œํ˜„ํ•œ๋‹ค.
  2. ์ ˆ๋Œ“๊ฐ’์„ ์ด์ง„๋ฒ•์œผ๋กœ ๋‚˜ํƒ€๋‚ธ๋‹ค.
  3. ์†Œ์ˆ˜์ ์„ ์™ผ์ชฝ์œผ๋กœ ์ด๋™์‹œ์ผœ, ์™ผ์ชฝ์—๋Š” 1๋งŒ ๋‚จ๊ฒŒ ๋งŒ๋“ ๋‹ค.(์ •๊ทœํ™”)
  4. ๊ฐ€์ˆ˜ ๋ถ€๋ถ„์€ ์†Œ์ˆ˜์ ์˜ ์˜ค๋ฅธ์ชฝ ๋ถ€๋ถ„์ด๋‹ค. ๋ถ€์กฑํ•œ ๋น„ํŠธ ์ˆ˜๋งŒํผ 0์œผ๋กœ ์ฑ„์šด๋‹ค.
  5. ์ง€์ˆ˜ ๋ถ€๋ถ„์€ ์ง€์ˆ˜์Šน์— Bias๋ฅผ ๋”ํ•œ๋‹ค.
  • Bias๋Š” ์ •๊ทœํ™”์‹œ ์ง€์ˆ˜๊ฐ€ ์Œ์ˆ˜๊ฐ€ ๋˜๋Š” ๊ฒฝ์šฐ๋ฅผ ๋ฐฉ์ง€ํ•˜๊ธฐ ์œ„ํ•ด์„œ ์‚ฌ์šฉํ•œ๋‹ค. ์ฆ‰ ์ง€์ˆ˜์™€ ์–‘์ˆ˜, ์Œ์ˆ˜๋ฅผ ๋‚˜ํƒ€๋‚ด๊ธฐ ์œ„ํ•œ ๋ฐฉ๋ฒ•์ด๋‹ค.
    • Bias๋Š” 32๋น„ํŠธ์—์„œ๋Š” 127, 64๋น„ํŠธ์—์„œ๋Š” 1023
Last update: August 8, 2023 22:50
Contributors: jaesungahn91