#noindex '''''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 생각해볼 것 { MKL [[정보,information]] [[정보이론,information_theory]] [[통신,communication]] [[데이터,data]] ~= [[자료,data]] [[압축,compression]] esp data_compression Sub: [[이진코드,binary_code]] WtEn:binary_code MKL [[이진수,binary_number]]? [[이진숫자,binary_digit]]? - [[수,number]] [[숫자,digit]] [[variable-length_code]] vs [[fixed-length_code]] } ... Ndict:code ---- '''''TODO 위쪽으로 MV''''' ---- AKA '''부호, 코드'''. [[정보,information]]를 표현하기 위한 [[기호,symbol]] 체계. Sub: 아스키코드 ASCII_code [[유니코드,Unicode]] [[해밍_코드,Hamming_code]] Reed-Solomon_code Turbo_code [[WpEn:Turbo_code]] = https://en.wikipedia.org/wiki/Turbo_code Short codes (quantum) [[그레이_코드,Gray_code]] //txt작성중 바코드 bar code QR코드 // 역사적으로, WpKo:전신_부호 ( 전신 전보 telegraphy WtEn:telegraphy WtEn:telegraph WpKo:전신 WpKo:전보 ) Baudot_code 보도_코드 보도_부호 Baudot code WpEn:Baudot_code NN:"Baudot code" 모스_부호 Morse_code WtEn:Morse_code Morse code https://pub.mearie.org/모스부호 WpKo:모스_부호 WpSp:Morse_code WpEn: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 https://gunkies.org/wiki/Object_code = executable_binary. pure_code https://gunkies.org/wiki/Pure_code object_code which is not self-modifying_code. self-modifying_code https://gunkies.org/wiki/Self-modifying_code [[WpKo:자체_수정_코드]] [[WpEn:Self-modifying_code]] https://everything2.com/title/self-modifying+code ''pagename to Google:self-modifying or Google:self-modification''? - p SelfModifying 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 WpEn:obfuscated_code redir to [[WpEn:Obfuscation_(software)]] [[WpKo:난독화]] dead_code dead_code_elimination 이건 compiler_optimization 의 일종 http://foldoc.org/dead+code+elimination http://foldoc.org/dead+code (Jargon File) position-independent_code WpKo:위치_독립_코드 WpEn:Position-independent_code repetition_code Google:repetition_code Huffman_code or Huffman_coding - writing self-synchronizing_code - writing; WpEn:Self-synchronizing_code 오류검출부호 오류정정부호? error-detecting (code) - error_detection related: https://pub.mearie.org/체크숫자 error-correcting (code) - error_correction [[WpEn:Error_correction_code]] = https://en.wikipedia.org/wiki/Error_correction_code <> = 부호, 코드, 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) = 부호화, 코딩, coding = encoding/decoding은 표현방식을 바꾸는 것 뿐이며, 이 과정에서 정보의 손실은 없다. chk encoding/decoding을 하는 무엇(? program? agent?) : encoder/decoder QQQ data_compression 은 encoding인가? 그럼 uncompressing은 decoding? 혼동하지 말아야 할 것, 비교: encrypt/decrypt { 평문plaintext 암호문 (ciphertext) 암호화(encryption) 복호화 (decryption) } 관련표현: 변환conversion - [[변환,transformation]]과의 관계는? coding_theory { [[http://wiki.mathnt.net/index.php?title=코딩_이론 수학노트: 코딩_이론]] https://mathworld.wolfram.com/CodingTheory.html https://ncatlab.org/nlab/show/coding+theory } 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 == 인코딩, encoding == 한글 인코딩의 이해 1편: 한글 인코딩의 역사와 유니코드 https://d2.naver.com/helloworld/19187 한글 인코딩의 이해 2편: 유니코드와 Java를 이용한 한글 처리 https://d2.naver.com/helloworld/76650 https://mathworld.wolfram.com/Encoding.html == 디코딩, decoding == == 코덱, codec == coder + decoder? = 기타 code들 + 이름에 code가 들어가는 것들 + code 용어들 = ''// tmp; 정리필요; from http://www.ktword.co.kr/test/view/view.php?m_temp1=2416&id=105 등등.'' == alphabet == [[알파벳,alphabet]]: 유한개의 서로 다른 [[기호,symbol]]들의 집합. codeword를 구성하는 요소들의 집합. code의 요소. http://www.ktword.co.kr/test/view/view.php?m_temp1=3916&id=105 == 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 === 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]] === minimum code length === Shannon의 제 1 정리 관련. == compact code == 가장 짧은 average code length를 갖는 code. (위의 average code length 참조) ex. Huffman_code == code word == [[부호어,codeword]] { 입력 [[기호,symbol]]들의 sequence to a [[채널,channel]] sequence of input symbols to a channel (Cover Thomas) AKA '''코드워드''' 기타 가능한 번역: 부호워드, 코드단어, 부호단어, 부호어, 코드어 Twins WpKo:부호_워드 tmp from http://www.ktword.co.kr/abbr_view.php?m_temp1=4257 저기선 source word(소스어)를 부호화(coding)한 것을 code word(부호어)로 설명. [[기호,symbol]]들의 sequence? - 이건 [[메시지,message]]를 이렇게 정의한 것도 봤는데... } === codeword set === 모든 가능한 codeword. 유효 부호어 집합 valid codeword set ([[부분공간,subspace]]) 유효부호어/무효부효어: 유효한 codeword만의 집합이 있으며, 무효부호어는 오류발생으로 판단. http://www.ktword.co.kr/test/view/view.php?m_temp1=4910&id=105 == code book == codebook { 코드북, 코드책, 부호책 입력 data의 부호화를 위해 미리 정해지는(정해진?) code vector(복원 벡터)를 모아놓은 색인화된 집합체. http://www.ktword.co.kr/abbr_view.php?nav=&m_temp1=3741&id=105 } == encode, encoding == http://www.ktword.co.kr/test/view/view.php?m_temp1=900&id=102 == decode, decoding == unique decoding: 수신된 codeword가 유일하게 decode되어 symbol이 결정. == cyclic code == 순회 부호?, 순환 부호 tolink [[CRC]] http://www.ktword.co.kr/abbr_view.php?nav=&m_temp1=4162&id=757 == orthogonal code == 직교 부호 http://www.ktword.co.kr/abbr_view.php?nav=&m_temp1=5393&id=387 [[직교성,orthogonality]] == instantaneous code == symbol binary sequence를 수신하는 즉시(동시에) 복호가 가능한 code. == unique code == == 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 ? https://xlinux.nist.gov/dads/HTML/prefixcode.html [[WpKo:앞자리_부호]] [[WpEn:Prefix_code]] == equivalent code == see http://www.ktword.co.kr/abbr_view.php?m_temp1=6203 == block code == code with fixed codeword length? Sub: // linear block code이기도 함 (via wpen) [[Reed-Solomon_code]] [[해밍_코드,Hamming_code] [[Hadamard_code]] [[expander_code]] [[Golay_code]] [[Reed-Muller_code]] [[WpKo:블록_부호]] [[WpEn:Block_code]] = https://en.wikipedia.org/wiki/Block_code http://www.ktword.co.kr/abbr_view.php?nav=&m_temp1=2608&id=116 == linear code == 선형부호 WpKo:선형_부호 WpEn:Linear_code http://www.ktword.co.kr/abbr_view.php?nav=&m_temp1=3855&id=756 == linear block code == Linear Code랑 같???? 선형블록부호 linear_block_code Srch:Hadamard_matrix == convolutional code, convolution code == 길쌈 부호, 컨볼루션 코드 block code와는 달리, memory성(기억성)을 가지는 부호화. http://www.ktword.co.kr/abbr_view.php?nav=&m_temp1=2500&id=745 [[합성곱,convolution]]과 관계 서술 .. == code extension == 선택가능한/보유중인 alphabet에서, 임의로 택한 symbol들을, 일렬로 나열하는 것 (왜 이름이 확장이지?) == numeric code == 수치만을 표현할 수 있는 code == alphanumeric code == 문자도 표현할 수 있는 code == code rate == 코드율. 부호화 시 실제 정보 비트가 어느 정도 포함될 수 있는지를 나타냄(?) http://www.ktword.co.kr/test/view/view.php?m_temp1=3202&id=105 == 생성행렬 == //주로 linear block code(선형블록부호)의 생성을 잘 표현. == 생성다항식 == //주로 cyclic code(순회부호)의 생성을 잘 표현. == systematic code == 체계적 부호/조직적 부호 부호화에 의해 정보 비트열이 변형되지 않고 동일 형태로 그대로 전송되는 code. http://www.ktword.co.kr/test/view/view.php?m_temp1=4280&id=116 systematic cyclic code == channel code, channel coding, channel encoding == [[채널,channel]]을 통한 정보 전송을 할 때, 수신측이 오류를 검출 및 정정할 수 있도록 하는 송신원에서의 신호 변환 과정. http://www.ktword.co.kr/abbr_view.php?m_temp1=984 = 정리예정 = [[메시지,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://blog.naver.com/yunho85/221530909402 src]]. CHK '''코드'''의 다른 뜻 chord - 화음 등 cord - 전선 등 Twins: [[HashKr:코드]] https://everything2.com/title/code