-
[Windows Programming] μΈμ½λ©μ΄λ?ANSI, ASCII, μ λμ½λ, λ©ν°λ°μ΄νΈWindows Programming 2020. 1. 19. 14:55λ°μν
- μ΄ κΈμ μ ν리 리μ²μ "Windows via C/C++"μ ν λλ‘ μμ±νμμ΅λλ€
λ§μ΄ν¬λ‘μννΈ μλμ°κ° μ μ λ λ²μ©νλ¨μ λ°λΌ μ ν리μΌμ΄μ κ°λ°μλ€μκ² λ€μν κ΅μ ν μμ₯μ λν μ€μμ±μ΄ μ¦λνκ³ μλ€. μ§μνλ₯Ό μν΄ μ λμ½λλ₯Ό μ¬μ©νκ³ μλλ° μ λμ½λκ° λ¬΄μμΈμ§, λ©ν°λ°μ΄νΈ, ANSI λ± λ€μν μΈμ½λ© λ°©μμ λν΄ μκ°νλ €κ³ νλ€.
μΈμ½λ©
μΈμ½λ©μ΄λ μ¬λμ΄ μκ³ μλ μΈμ΄λ₯Ό μ»΄ν¨ν°κ° μ¬μ©νλ 0κ³Ό 1 κ°μ μ΄μ§ μ½λλ‘ λ³ννλ κ³Όμ μ μΈμ½λ©μ΄λΌκ³ νλ€.
ASCII
μμ΄μ νμμ μμ΄λ¬Έμλ₯Ό μΈμ½λ©νλ λ°©μμ λ§νλ€. λλΆλΆμ κ°λ°μλΌλ©΄ λ§μ΄ λ€μ΄λ΄€μλ§ν μΈμ½λ©μ΄κ³ λ¬Έμμ΄μ ν¬κΈ° λΉκ΅λ₯Ό μ¬μ©ν λλ ASCII μ½λλ₯Ό λ³΄κ³ λΉκ΅νλ€.
ASCII(7bit) : 128 κ°μ λ¬Έμλ₯Ό νννλ€.ANSI
λ§μ΄ν¬λ‘μννΈλ μ μΈκ³ μΈμ΄λ₯Ό νκΈ°νκΈ° μν΄ ASCIIμ½λλ‘λ νκ³λ₯Ό λκΌκ³ μ§μνλ₯Ό μν΄ ASCIIμ½λμ Codepage λΉνΈλ₯Ό λν΄ λ€μν μΈμ΄λ₯Ό νκΈ°νλ μΈμ½λ© λ°©μμ λ§νλ€.
ASCII(7bit) + CodePage(1bit) : 256κ°μ λ¬Έμλ₯Ό νννκ³ Codepageλ‘ λλΌλ§λ€ μ ν λΉνΈκ° μλ€.λ©ν°λ°μ΄νΈ
μμ€ν€ μ½λλ 1byteμ΄λ€. μ΄ μ½λμ λ€λ₯Έ λ¬Έμλ€(2byte)λ₯Ό ν©μ³μ ν¬ν¨ν λ¬Έμ μ§ν©μ λ©ν°λ°μ΄νΈ λ¬Έμ μ§ν©μ΄λ€.
μλ₯Ό λ€μ΄ "abcνκ΅" μ΄ λ¬Έμμ byteμλ 7byteκ° λλ€.μ λμ½λ
μ μΈκ³μ λͺ¨λ λ¬Έμλ₯Ό νννλ λ°©λ²μΌλ‘ λͺ¨λ μΈμ΄λ₯Ό 2byteλ‘ νννλ μ½λμ΄λ€. μ¦, λͺ¨λ λ¬Έμλ₯Ό 2byte μ«μλ‘ 1:1 λ§€νμν¨ ννμ μ½λλΌκ³ μκ°νλ©΄ λλ€.
<μ λμ½λ μΈμ½λ© λ°©μ>
-
UTF-8 : μμ΄λ 1byte, μ λ½ λ° μ€λ μ§μ 2byte, νκΈ 3byte λ± νλμ λ¬Έμλ₯Ό 1~4λ°μ΄νΈλ‘ μΈμ½λ©μ μννλ€.
λͺ¨λ μΈμ΄μ λ°λΌ μΈμ½λ© νλ λ°©μμ΄ λ€λ₯΄λ―λ‘ λ¬Έμ λ³ν μκ³ λ¦¬μ¦μ΄ 볡μ‘νλ€. -
UTF-32 : λͺ¨λ λ¬Έμλ₯Ό 4byteλ‘ μΈμ½λ©μ μννμ¬ λ¬Έμ λ³ν μκ³ λ¦¬μ¦μ κ°λ¨νκ² λ§λ€μλ€. νμ§λ§ λ©λͺ¨λ¦¬ ν¨μ¨ μΈ‘λ©΄μμ λ§€μ° λΉν¨μ¨μ μ΄λ―λ‘ νμΌ μ μ₯μ΄λ λ€νΈμν¬ μ μ‘ λ°©μμλ μ¬μ©νμ§ μλλ€.
-
UTF-16 : κ³΅κ° μ μ½κ³Ό μ½λ©μ νΈμμ± μ¬μ΄μ μ μ ν μ μΆ©νμΌλ‘ λ³Ό μ μλ€.
- μΆκ°λ‘ κΆκΈν μ¬νμ΄λ μμ ν λΆλΆμμΌλ©΄ λκΈ λ¨κ²¨μ£ΌμΈμ
λ°μν'Windows Programming' μΉ΄ν κ³ λ¦¬μ λ€λ₯Έ κΈ
[Windows Programming] μ»΄ν¨ν° νλμ¨μ΄ ꡬμ±, νλ‘κ·Έλ¨ μ€ν λ°©μ (0) 2020.06.04 [Windows Programming] μ λμ½λμ ANSI (0) 2020.01.19 [Windows Programming] μλ¬ νΈλ€λ§(Error Handling) [2] (0) 2020.01.14 [Windows Programming] μλ¬ νΈλ€λ§(Error handling) [1] (0) 2020.01.13 [Windows Programming] μλμ° νλ‘κ·Έλλ° Data types (0) 2020.01.13