πŸ“κ°œλ°œ 일지 (3)

우민·2023λ…„ 8μ›” 3일
0

개발 일지

λͺ©λ‘ 보기
3/9

λͺ¨λ“  인간은 μ„ μ²œμ μœΌλ‘œ 지식을 ν¬κ΅¬ν•œλ‹€.
"All men by nature desire knowledge"
- μ•„λ¦¬μŠ€ν† ν…”λ ˆμŠ€

인간은 λŠμž„μ—†μ΄ λ°œμ „ν•˜κ³  μ§„ν™”ν•˜λŠ” 생물이닀.
λ°°μš°μ§€ μ•ŠλŠ” 인간은 λ„νƒœλ˜κΈ° λ§ˆλ ¨μ΄λ‹€.

πŸ“Œ Day - 3

1. Real Number ( μ‹€μˆ˜ν˜• )

int i = 4 + 4.0
// int(μ •μˆ˜ν˜•)
// 4(μ •μˆ˜ν˜•)
// 4.0(μ‹€μˆ˜ν˜•) --(ν˜•λ³€ν™˜)-> 4(μ •μˆ˜ν˜•)
// i = 8
  • μ •μˆ˜ν˜•κ³Ό μ‹€μˆ˜ν˜•μ˜ 처리 방식은 μ™„μ „νžˆ λ‹€λ₯΄λ‹€
  • μ •μˆ˜ν˜•κ³Ό μ‹€μˆ˜ν˜•μ€ μ„œλ‘œ ν‘œν˜„ λΉ„νŠΈκ°€ λ‹€λ₯΄λ‹€
  • μ •μˆ˜μ™€ μ‹€μˆ˜κ°€ ν˜Όν•©λœ 연산을 ν•  λ•Œ 처리 방식을 μ •ν•΄μ£Όμ–΄μ•Ό ν•œλ‹€

[ μ‹€μˆ˜ν˜• ν‘œν˜„ ]

λΆ€λ™μ†Œμˆ˜μ ( Floating Point )

  • λΆ€ν˜ΈλΆ€ : μ–‘μˆ˜μΌ λ•Œ 0, 음수일 λ•Œ 1
  • μ§€μˆ˜λΆ€μ™€ κ°€μˆ˜λΆ€λ‘œ μ‹€μˆ˜ ν‘œν˜„

IEEE의 λΆ€λ™μ†Œμˆ˜μ 

  • μ΅œμƒμœ„ λΉ„νŠΈ ( MSB ) : λΆ€ν˜Έ κ²°μ • 1 bits
  • μ§€μˆ˜ λΆ€λΆ„ ( Exponent ) : 8 bits
  • κ°€μˆ˜ λΆ€λΆ„ ( Fraction ) : 23 bits
// ex) 32bit μ»΄ν“¨ν„°μ—μ„œ μ‹­μ§„μˆ˜ 21.8125λ₯Ό μ •κ·œν™” 된 μ΄μ§„μˆ˜λ‘œ λ³€ν™˜
// κ°œλ… : μ‹­μ§„μˆ˜ 1.1μ—μ„œ 0.1은 1.0에 1/10   |  μ΄μ§„μˆ˜ 1.1μ—μ„œ 0.1은 1.0에 1/2


// μ •μˆ˜ λΆ€λΆ„
// μ‹­μ§„μˆ˜ 21. == μ΄μ§„μˆ˜ 10101

// μ†Œμˆ˜ λΆ€λΆ„ 
// μ‹­μ§„μˆ˜ 0.8125 == μ΄μ§„μˆ˜ 0.1101
// μ„€λͺ… : 1(0.5) + 1(0.25) + 1(0.125) + 0 + 1(0.03125) = 0.8125

// μ‹­μ§„μˆ˜ 21.8125 == μ΄μ§„μˆ˜ 10101.1101


// μ •κ·œν™”λœ μ΄μ§„μˆ˜  
// 10101.1101의 μ •κ·œν™” β†’ 0.101011101 * 2^5 
// μ§€μˆ˜μ˜ 5λ₯Ό μ΄μ§„λ²•μœΌλ‘œ λ³€ν™˜ β†’ 101


// μ •κ·œν™”λœ λΆ€λ™μ†Œμˆ˜μ μœΌλ‘œ λ‚˜νƒ€λ‚Έ 21.8125
// 00000010110101110100000000000000
// μ„€λͺ… : 0(λΆ€ν˜Έ) 00000101(μ§€μˆ˜λΆ€) 10101110100000000000000(κ°€μˆ˜λΆ€)
  • μ‹€μˆ˜ ν‘œν˜„ λ°©μ‹μœΌλ‘œ λͺ¨λ“  수λ₯Ό μ •ν™•νžˆ ν‘œν˜„ν•  수 μ—†λ‹€
  • μ‹€μˆ˜ ν‘œν˜„ 방식은 정밀도λ₯Ό λ‚˜νƒ€λ‚Έλ‹€

λ”°λΌμ„œ double( 8Byte ) μžλ£Œν˜•μ΄ float( 4Byte ) μžλ£Œν˜• 보닀 더 μ•„λž˜μ˜
μ†Œμˆ˜μ κΉŒμ§€ μ •ν™•ν•˜κ²Œ ν‘œν˜„μ΄ κ°€λŠ₯ν•˜λ‹€


πŸ’¬ COMMENT

λ³΄μ‹œλŠ” 뢄이 λ§Žμ§€λŠ” μ•Šκ² μ§€λ§Œ ν˜Ήμ‹œ 잘λͺ»λœ 정보가 있으면 μ•Œλ €μ£Όμ‹œλ©΄ κ°μ‚¬ν•˜κ² μŠ΅λ‹ˆλ‹€.

profile
ν•™μŠ΅ν•˜λŠ” 쀑

1개의 λŒ“κΈ€

comment-user-thumbnail
2023λ…„ 8μ›” 3일

κΈ€ 재미있게 λ΄€μŠ΅λ‹ˆλ‹€.

λ‹΅κΈ€ 달기