코드,code

TBD; page fork?
정보이론의 code는 부호,code (rel. symbol, signal, information... , 통신,communication환경에서)
실행가능한 code는 코드,code(여기) 이렇게 하는 게 어떨지? - rel. 실행,execution (rel. program, process, runtime, ... , 컴퓨터,computer환경에서)
그럼 둘 겹치는 것은 분명 있는데 어떻게 하는 게 좋을지?

또는 후자 실행가능한 code의 pagename을 executable / executable_code (rel. executable_file )로 해도 된다. (Rel. 실행,execution)

pagename problem .... _code, _coding, _encoding 이것들을 어떻게 normalize할것인지가 상당히 까다로워서 일단 local로 조금씩 mv하면서, 천천히.
모두 _code 로 통일(?)
하기에는 _coding _encoding 과는 의미가 전혀 달라서.

코딩,coding 인코딩,encoding 부호화,encoding 부호화,coding ...중 pagename TBD.
Naver:코딩 인코딩 차이
Ggl:코딩 인코딩 차이 ...둘의 검색 퀄리티 차이가 대단하다. 네이버는 거의 다 엉뚱한 검색결과. (2024-03)
Ggl:coding encoding difference
try WtEn:coding WtEn:encoding


정보/통신에서 말하는 부호,code(tentative pagename) 분리예정

이게 늦어진 이유가 suffix가 많아서인데 _code _coding _encoding ... 너무 많아 아직도 감잡기가 어렵다, normalization rule 생각해볼 것




} ... Ndict:code

TODO 위쪽으로 MV

AKA 부호, 코드.
정보,information를 표현하기 위한 기호,symbol 체계.

Sub:
아스키코드 ASCII_code
유니코드,Unicode

해밍_코드,Hamming_code

Reed-Solomon_code

Turbo_code
Short codes (quantum)

그레이_코드,Gray_code //txt작성중

바코드 bar code
QR코드

// 역사적으로,
WpKo:전신_부호 ( 전신 전보 telegraphy WtEn:telegraphy WtEn:telegraph WpKo:전신 WpKo:전보 )
Baudot_code 보도_코드 보도_부호
모스_부호
Morse_code WtEn:Morse_code
Morse code
// 이상은 정보,information, 자료,data, 통신,communication, 신호,signal 관련이었고... code란 CS에선 보통
메모리,memory에 text(code) segment에 있는, 실행,execution가능한, ... 이하.

executable_code - 실행하기 위해 작성. 프로그램의 논리를 표현. (유사표현: binary, program, 파일,file일 땐 object_file, 간단히 executable)
bytecode
p-code
pseudocode // 실제 실행하기 위한 것은 아니고 논리만 표현

native_code
executable_code 인데 특정 platform에서만 실행될 수 있는? chk. https://everything2.com/title/native code

object_code
pure_code
https://gunkies.org/wiki/Pure_code
object_code which is not self-modifying_code.

self-modifying_code
code_transformation (TOCLEANUP)
... code_morphing code_modification 이런표현도 쓰이는지 chk
Google:code transformation Google:code morphing Google:code modification
WpEn:Code_morphing
더 많이 쓰이는 표현은 프로그램변환,program_transformation ... curr at 변환,transformation 맨밑쪽에 살짝 언급중.

code_generation and code_generator
rel. 어셈블러,assembler / compilation / 컴파일러,compiler / build_tool(Unix make etc)
Wiki:CodeGeneration Wiki:CodeGenerator (del ok)

obfuscated_code and code_obfuscation
dead_code
dead_code_elimination
이건 compiler_optimization 의 일종
http://foldoc.org/dead code elimination
http://foldoc.org/dead code (Jargon File)

position-independent_code
repetition_code
Huffman_code or Huffman_coding - writing

self-synchronizing_code - writing; WpEn:Self-synchronizing_code


1. 부호, 코드, code


ex. (tmp list)
ASCII
ANSI
code page
CP949 - code page 949
EBCDIC
EUC - extended unix code
EUC-KR
unicode - 유니코드,Unicode
UTF U.... transformation format

DBCS
BCD - BCD,binary_coded_decimal - 4비트로 10진수 표현
base64
uuencode/uudecode
URI encoding (% encoding)

2. 부호화, 코딩, coding


encoding/decoding은 표현방식을 바꾸는 것 뿐이며, 이 과정에서 정보의 손실은 없다. chk
encoding/decoding을 하는 무엇(? program? agent?) : encoder/decoder
QQQ data_compression 은 encoding인가? 그럼 uncompressing은 decoding?

혼동하지 말아야 할 것, 비교: encrypt/decrypt
{
평문plaintext 암호문 (ciphertext) 암호화(encryption) 복호화 (decryption)
}

관련표현: 변환conversion - 변환,transformation과의 관계는?


range_coding = range_encoding - writing; pagename은 아마 범위부호화,range_coding... WpEn:Range_coding

entropy_coding = entropy_encoding - writing; pagename은 아마 엔트로피부호화,entropy_coding - writing ... WpKo:엔트로피_부호화 WpEn:Entropy_coding

unary_coding - WpEn:Unary_coding ... corresp ko interwiki - unary_code WpKo:단항_부호

Elias_gamma_code / Elias_gamma_coding
Elias_omega_code / Elias_omega_coding
Elias_delta_code / Elias_delta_coding
... writing; 모두 Elias_code / Elias_coding 으로 분류하면 됨? ... WpEn:Elias_coding

2.1. 인코딩, encoding

한글 인코딩의 이해 1편: 한글 인코딩의 역사와 유니코드
https://d2.naver.com/helloworld/19187
한글 인코딩의 이해 2편: 유니코드와 Java를 이용한 한글 처리
https://d2.naver.com/helloworld/76650


2.2. 디코딩, decoding


2.3. 코덱, codec

coder + decoder?

3. 기타 code들 + 이름에 code가 들어가는 것들 + code 용어들

3.1. alphabet

알파벳,alphabet: 유한개의 서로 다른 기호,symbol들의 집합. codeword를 구성하는 요소들의 집합.
code의 요소.
http://www.ktword.co.kr/test/view/view.php?m_temp1=3916&id=105

3.2. code length

codeword를 표현하는 데 필요한 sequence의 길이.
code alphabet으로 code를 표현하는 데 필요한 sequence의 길이.

$\vec{x}=(x_1,x_2,\ldots,x_j)$ 에서
$\vec{x}$ : code vector
$x_i$ : code alphabet
$j$ : code length

see http://www.ktword.co.kr/abbr_view.php?nav=&m_temp1=4541&id=105

3.2.1. average code length

code length가 가변인 경우, code에서, 모든 codeword들의 평균 길이
$\sum_{i=1}^{q}p_i\ell_i$
$p_i$ : 각 symbol의 발생 확률
$\ell_i$ : 각 symbol의 code length
$q$ : symbol의 수

compact code : 가장 짧은 average code length를 갖는 code.
평균,mean,average

3.2.2. minimum code length

Shannon의 제 1 정리 관련.

3.3. compact code

가장 짧은 average code length를 갖는 code. (위의 average code length 참조)
ex. Huffman_code

3.4. code word

부호어,codeword
{
입력 기호,symbol들의 sequence to a 채널,channel
sequence of input symbols to a channel (Cover Thomas)


AKA 코드워드
기타 가능한 번역: 부호워드, 코드단어, 부호단어, 부호어, 코드어


tmp from http://www.ktword.co.kr/abbr_view.php?m_temp1=4257
저기선 source word(소스어)를 부호화(coding)한 것을 code word(부호어)로 설명.
기호,symbol들의 sequence?
- 이건 메시지,message를 이렇게 정의한 것도 봤는데...
}

3.4.1. codeword set

모든 가능한 codeword.

유효 부호어 집합 valid codeword set (부분공간,subspace)

유효부호어/무효부효어:
유효한 codeword만의 집합이 있으며, 무효부호어는 오류발생으로 판단.
http://www.ktword.co.kr/test/view/view.php?m_temp1=4910&id=105

3.5. code book

codebook
{
코드북, 코드책, 부호책
입력 data의 부호화를 위해 미리 정해지는(정해진?) code vector(복원 벡터)를 모아놓은 색인화된 집합체.
http://www.ktword.co.kr/abbr_view.php?nav=&m_temp1=3741&id=105
}

3.7. decode, decoding

unique decoding: 수신된 codeword가 유일하게 decode되어 symbol이 결정.

3.8. cyclic code

3.10. instantaneous code

symbol binary sequence를 수신하는 즉시(동시에) 복호가 가능한 code.

3.11. unique code

3.12. prefix code

앞부분부터 해석할 때, 다른 비트 표현과 겹치지 않는 코드?

어떤 codeword도 다른 codeword의 prefix가 되지 않도록 만들어진 code.
이상 see http://www.ktword.co.kr/abbr_view.php?nav=&m_temp1=4537&id=105

tmp from https://programming119.tistory.com/136
{
Kraft_inequality는 prefix code에 대해 다음이 성립한다는 것.
$\sum_{i=1}^{r} s^{-n_i} \le 1$
여기서
$n_i$ : 코드 표현에 필요한 길이 수 (2진수이면 비트 수, 트리로 치면 깊이)
$s$ : 표현하는 코드의 진수 수 (2진수이면 2)
$r$ : 표현하는 모든 코드의 수
$s^{-n_i}$ : data_compression 전의 빈도수 비율(의 근사값)이라고 생각하면 된다고.

의미:
모든 data를 코드화하여 표현했을 때,
prefix code로 잘 구현했으면 : 빈도수 비율의 합은 1 이하이다.

결론:
Kraft inequality를 만족 ⇒ uniquely decodable하다 (prefix code다)
Uniquely decodable ⇒ Kraft inequaltiy가 성립한다
}

Ex./Sub:
Huffman_code
universal_code ?


3.14. block code

3.16. linear block code

Linear Code랑 같????
선형블록부호
linear_block_code


3.17. convolutional code, convolution code

길쌈 부호, 컨볼루션 코드

block code와는 달리, memory성(기억성)을 가지는 부호화.


합성곱,convolution과 관계 서술 ..

3.18. code extension

선택가능한/보유중인 alphabet에서, 임의로 택한 symbol들을, 일렬로 나열하는 것 (왜 이름이 확장이지?)

3.19. numeric code

수치만을 표현할 수 있는 code

3.20. alphanumeric code

문자도 표현할 수 있는 code

3.21. code rate

코드율.
부호화 시 실제 정보 비트가 어느 정도 포함될 수 있는지를 나타냄(?)
http://www.ktword.co.kr/test/view/view.php?m_temp1=3202&id=105

3.22. 생성행렬

//주로 linear block code(선형블록부호)의 생성을 잘 표현.

3.23. 생성다항식

//주로 cyclic code(순회부호)의 생성을 잘 표현.

3.24. systematic code

체계적 부호/조직적 부호
부호화에 의해 정보 비트열이 변형되지 않고 동일 형태로 그대로 전송되는 code.
http://www.ktword.co.kr/test/view/view.php?m_temp1=4280&id=116

systematic cyclic code

3.25. channel code, channel coding, channel encoding

채널,channel을 통한 정보 전송을 할 때, 수신측이 오류를 검출 및 정정할 수 있도록 하는 송신원에서의 신호 변환 과정.
http://www.ktword.co.kr/abbr_view.php?m_temp1=984

4. 정리예정

메시지,message/통신,communication/신호,signal/정보 오류 검출 관련.
정보,information 오류,error
디지털, 비트,bit 한정해서.
관련 주제: 여유도,redundancy, ...

naive한 방식은 정보를 3번 (이상) 보내는 것.
좀더 발전된 방식은 검출만 가능, 오류 수정 불가능.
checksum.
parity. 문제점: 두 개 이상의 오류(noise로 인한 error: bit flip)가 한번에 발생했을 때는 검출도 불가능?
더 발전된 방식은 error correction이 가능.
Hamming은 오래됨 (Shannon 이론 나오기도 전)
Reed-Solomon은 CD/DVD에 사용.


인코드 부호화 encode 인코딩 encoding
디코드 복호화 decode 디코딩 decoding
코덱 codec


부호의 다른 뜻
  • 부호,sign (+/−, plus/minus, positive/negative)
  • 기호,symbol를 부호라고 하기도 함
  • Symbol 중에서 letter나 alphabet을 제외한 것을 부호라고 하기도 함 (ex. 문장부호)

code의 다른 뜻
  • (암호학에서) 암호. cypher와 같은 뜻. [https]src. CHK

코드의 다른 뜻
chord - 화음 등
cord - 전선 등

Twins:
HashKr:코드
https://everything2.com/title/code