λ³Έλ¬Έ λ°”λ‘œκ°€κΈ°

ABAP Concept (πŸ“κ°œλ…)/Etc.

ABAP Byte νƒ€μž…κ³Ό Hexadecimal(16μ§„μˆ˜) 관계

ABAPμ—μ„œ 데이터 νƒ€μž…μ„ 이야기할 λ•Œ  μ„Έ κ°€μ§€λ‘œ λΆ„λ₯˜ν•  수 μžˆλ‹€.  Character νƒ€μž…(λ¬Έμžν˜•), Numeric νƒ€μž…(μˆ«μžν˜•), 그리고 Byte νƒ€μž…μ΄λ‹€. λŒ€λΆ€λΆ„μ˜ μž…λ¬Έμžλ“€μ€ λ¬Έμžν˜•κ³Ό μˆ«μžν˜• νƒ€μž…μ—λŠ” μ΅μˆ™ν•˜μ§€λ§Œ, "Byte νƒ€μž…? 그건 λ„λŒ€μ²΄ 뭐지?" ν•˜κ³  고개λ₯Ό κ°Έμ›ƒν•˜κ²Œ λœλ‹€.

Byte νƒ€μž…μ΄ 무엇인지, μ™œ ν•„μš”ν•œμ§€,  ABAPμ—μ„œ Byteνƒ€μž…κ³Ό Hexadecimal(16μ§„μˆ˜)의 관계λ₯Ό μ•Œμ•„λ³΄κ³  μ–΄λ–»κ²Œ μ‹€λ¬΄μ—μ„œ μ‚¬μš©λ˜λŠ”μ§€μ— λŒ€ν•΄ ν•œλ²ˆ μ•Œμ•„λ³΄λ„λ‘ ν•˜μž.


1. BYTE νƒ€μž…이 λ­”κ°€μš”?

 BYTE νƒ€μž…μ€ 컴퓨터가 데이터λ₯Ό μ €μž₯ν•  λ•Œ μ‚¬μš©ν•˜λŠ” κΈ°λ³Έ λ‹¨μœ„λ‘œ, 컴퓨터가 μ΄ν•΄ν•˜λŠ” λ°μ΄ν„°λŠ” κ²°κ΅­ 0κ³Ό 1둜 이루어진 μ΄μ§„μˆ˜(Binary)인데 이 μ΄μ§„μˆ˜λ₯Ό 8μžλ¦¬μ”© λŠμ–΄μ„œ ν‘œν˜„ν•œ 것이 λ°”λ‘œ BYTE(λ°”μ΄νŠΈ)이닀.

  • BYTE ν•˜λ‚˜λŠ” 0κ³Ό 1둜 κ΅¬μ„±λœ 8개의 λΉ„νŠΈλ‘œ, 01010101 같은 ν˜•νƒœλ‘œ ꡬ성함.

πŸ’‘ BYTE νƒ€μž…μ€ 주둜 파일, 이미지, μ•”ν˜Έν™”λœ κ°’ λ“± μ‚¬λžŒμ—κ²ŒλŠ” 직관적이지 μ•Šμ€ 데이터( 기술적 데이터 )λ₯Ό λ‹€λ£° λ•Œ μ‚¬μš©ν•˜κ²Œ λœλ‹€. 


2. HEXADECIMAL νƒ€μž…은 λ¬΄μ—‡μΈκ°€μš”?

 Hexadecimal, 즉 16μ§„μˆ˜λŠ” 0μ—μ„œ 9κΉŒμ§€μ˜ μˆ«μžμ™€ Aμ—μ„œ FκΉŒμ§€μ˜ 문자λ₯Ό μ‚¬μš©ν•΄μ„œ 숫자λ₯Ό ν‘œν˜„ν•˜λŠ” λ°©λ²•μœΌλ‘œ 0A, FF, AB12와 같은 ν˜•νƒœλ‘œ ν‘œν˜„ν•œλ‹€. 

그럼 μ™œ μ΄λ ‡κ²Œ λ³΅μž‘ν•˜κ²Œ 16μ§„μˆ˜λ₯Ό μ“°λŠ”κ±ΈκΉŒ? μ΄μœ λŠ” κ°„λ‹¨ν•˜λ‹€. μ΄μ§„μˆ˜λŠ” λ„ˆλ¬΄ κΈΈκ³  읽기 μ–΄λ ΅κΈ° λ•Œλ¬Έμ΄μ—μš”. κ·Έλž˜μ„œ μ΄μ§„μˆ˜λ₯Ό 더 μ§§κ³  μ‚¬λžŒμ΄ 읽기 μ‰½κ²Œ ν‘œν˜„ν•˜κΈ° μœ„ν•΄ λ§Œλ“€μ–΄μ‘Œλ‹€.

 

πŸ“Œ μ˜ˆμ‹œ:

  • μ΄μ§„μˆ˜ 11111111 → 16μ§„μˆ˜ FF
  • μ΄μ§„μˆ˜ 00001111 → 16μ§„μˆ˜ 0F

즉, μ»΄ν“¨ν„°λŠ” BYTE둜 데이터λ₯Ό μ €μž₯ν•˜μ§€λ§Œ, μš°λ¦¬λŠ” 이 데이터λ₯Ό 보기 쉽도둝 Hexadecimal ν˜•νƒœλ‘œ λ³€ν™˜ν•΄μ„œ λ³΄λŠ” 것이닀.


3. ABAPμ—μ„œ Byte νƒ€μž…μ€ μ–Έμ œ μ‚¬μš©λ˜λ‚˜μš”?

ABAPμ—μ„œ BYTE νƒ€μž… 데이터λ₯Ό μž…λ ₯ν•˜κ±°λ‚˜ 좜λ ₯ν•  λ•ŒλŠ” 거의 항상 Hexadecimal νƒ€μž… ( Type  X )으둜 ν‘œν˜„ν•˜λ©°,

μ•žμ„œ μ–˜κΈ°ν•œ κ²ƒμ²˜λŸΌ λ¬Έμ„œνŒŒμΌ( PDF, μ—‘μ…€, CSV ... ) μ΄λ‚˜ 이미지 파일 등을 μ œμ–΄ν•  λ•Œ μ‚¬μš©λ˜μ–΄μ§„λ‹€. 

 

λŒ€ν‘œμ μΈ 예둜 파일 λ‹€μš΄λ‘œλ“œ / μ—…λ‘œλ“œλ₯Ό 예둜 λ“€ 수 μžˆλ‹€. 

< Byte νƒ€μž…μ„ μ΄μš©ν•œ μ—…λ‘œλ“œ 예제 >

μ˜ˆμ œμ™€ 같이 ν•΄λ‹Ή νŒŒμΌμ„ lt_raw_dataλ₯Ό Type X둜 ν•΄μ„œ ν•΄λ‹Ή νŒŒμΌμ„ 16μ§„μˆ˜ν˜•νƒœμ˜ 인터널 ν…Œμ΄λΈ”λ‘œ λ°›λŠ”λ‹€. ν•΄λ‹Ή λ°μ΄ν„°λŠ” 주둜 메일 파일 첨뢀, GOS attachment, CBOν…Œμ΄λΈ”μ— μ €μž₯ν•  λ•Œ μ‚¬μš©λœλ‹€. 참고둜 μ˜ˆμ œμ—μ„œ ν•΄λ‹Ή ν•¨μˆ˜μ˜ EXPORTING νŒŒλΌλ―Έν„°μ—μ„œ λ°›λŠ” filetype 의 'BIN' 값은 Binary (λ°”μ΄λ„ˆλ¦¬) ν˜•νƒœλ‘œ λ°›κ²Œ λ‹€λŠ” 것을 λ§ν•œλ‹€. 

 

κ·Έ 외에도 λ°μ΄ν„°μ˜ μ•”λ³΅ν˜Έν™”, 타 μ‹œμŠ€ν…œ κ°„μ˜ 파일 전솑 μΈν„°νŽ˜μ΄μŠ€ 등에 μ‚¬μš©λ˜μ–΄ μ§„λ‹€. 

 

πŸ’‘μ°Έκ³ λ‘œ λ¬Έμžν˜•μ„ 16μ§„μˆ˜λ‘œ λ°”κΎΈλ©΄ λ‹€μŒκ³Ό κ°™λ‹€. ( 'hello' 문자λ₯Ό 16μ§„μˆ˜λ‘œ λ³€ν™˜ → lv_hex =  68656C6C6F )

< Charater -> 16μ§„μˆ˜ 예제 >


✍️ μ •λ¦¬ν•˜λ©΄,

  • BYTE νƒ€μž…μ€ 컴퓨터가 데이터λ₯Ό μ €μž₯ν•˜λŠ” μ‹€μ œ 방식이닀.
  • Hexadecimal(16μ§„μˆ˜)은  Binary(2μ§„μˆ˜) ν˜•νƒœμ˜ BYTE νƒ€μž…μ˜ 데이터λ₯Ό 보기 νŽΈν•˜λ„λ‘ ν‘œν˜„ν•œ 방식이닀..
  • ABAPμ—μ„œλŠ” BYTE 데이터λ₯Ό λ‹€λ£° λ•Œ Hexadecimal ν˜•νƒœμΈ Type Xλ₯Ό μ‚¬μš©ν•˜μ—¬ μž…,좜λ ₯ν•œλ‹€.
  • μ‹€λ¬΄μ—μ„œλŠ” λ¬Έμ„œ, 이미지 같은 파일 첨뢀, μ—…λ‘œλ“œ, λ‹€μš΄λ‘œλ“œ λ“± 파일 μ²˜λ¦¬μ‹œ μ‚¬μš©λ˜μ–΄μ§„λ‹€.