오프셋 이진

Offset binary

간격띄우기 이진([1]초과 K,[1]초과-N,초과 e,[2][3]초과 코드 또는 편향 표현이라고도 함)은 서명된 숫자를 나타내는 방법이다.n서명되지 않은 번호에 해당하는 비트 패턴으로 표시됨n+K,K바이어싱또는 오프셋이 된다.오프셋 이진에 대한 표준은 없지만, 대부분 n비트 이진 워드의 K는 K = 2이다n−1(예를 들어, 네 자리 이진수의 오프셋은3 2=8이다.이것은 최소 음수 값은 모두 0으로 표시되고, "0" 값은 가장 유의한 비트의 1로 표시되며, 다른 모든 비트의 0으로 표시되며, 최대 양의 은 모두로 표시된다(편안하게, 이것은 두의 보어를 사용하는 것과 동일하지만 가장 유의한 비트가 반전된다).또한 논리 비교 연산에서는 실제 형태 수치 비교 연산과는 동일한 결과를 얻는 반면, 두 개의 보완 표기법에서는 비교되는 숫자들이 동일한 기호를 갖는 경우에만 실제 형태 수치 비교 연산에는 논리 비교가 동의할 수 있다.그렇지 않으면 모든 음수 값이 모든 양의 값보다 큰 것으로 간주되면서 비교의 감각이 반전될 것이다.

초기 동기식 멀티플렉싱 전신에 사용되는 5비트 바우도트 코드는 오프셋-1(과잉-1) 반사 바이너리(회색) 코드로 볼 수 있다.

오프셋-64(초과-64) 표기법의 역사적으로 두드러진 예로는 IBM System/360 및 System/370 세대 컴퓨터의 부동소수점(초과) 표기법이 있었다."성격"(exponential)은 7비트 초과 64 숫자(동일한 바이트의 고차 비트에는 의의의의 부호가 들어 있었다)[4]의 형태를 취했다.

1970년대와 1980년대에 다양한 프로그래밍 언어(특히 BASIC)에서 사용된 부동 소수점 형식인 Microsoft Binary Format의 8비트 지수를 오프셋-129 표기법(초과-129)으로 인코딩했다.

IEEE 부동 소수점 산술 표준(IEEE 754)은 다양한 크기의 지수를 사용하지만, 각 정밀도의 형식에는 오프셋 표기법을 사용한다.그러나 특이하게도 "excess 2n−1"를 사용하는 대신 "excess 2n−1 - 1"(즉, 초과-15, 초과-127, 초과 1023, 초과 16383)을 사용하므로 지수의 선행(고차) 비트를 뒤집으면 지수를 두 개의 보완 표기법으로 변환하지 않는다.

오프셋 바이너리는 디지털 신호 처리(DSP)에 자주 사용된다.디지털(A/D)과 아날로그(D/A) 칩은 대부분 단극으로 양극 신호(양극값과 음극값 모두 있는 신호)를 처리할 수 없다는 뜻이다.이에 대한 간단한 해결책은 A/D 및 D/A 컨버터 범위의 절반에 해당하는 DC 오프셋으로 아날로그 신호를 바이어스하는 것이다.그 결과 디지털 데이터는 오프셋 바이너리 형식으로 끝나게 된다.[5]

대부분의 표준 컴퓨터 CPU 칩은 오프셋 바이너리 포맷을 직접[citation needed] 처리할 수 없다.CPU 칩은 일반적으로 서명 및 부호화되지 않은 정수와 부동소수 값 형식만 처리할 수 있다.오프셋 바이너리 값은 이러한 CPU 칩에 의해 여러 가지 방법으로 처리될 수 있다.데이터는 프로그래머가 소프트웨어의 영점 오프셋을 처리하도록 요구하는 서명되지 않은 정수로 취급될 수 있다.데이터는 0 오프셋을 빼기만 하면 (CPU가 기본적으로 처리할 수 있는) 서명 정수 형식으로 변환될 수도 있다.첫 번째 비트가 두 개의 보어에 대해 반전된다는 것을 암시하는 n비트 워드의 가장 일반적인 오프셋 2의n−1 결과로서, 별도의 뺄셈 단계가 필요하지 않지만, 첫 번째 비트를 간단히 반전시킬 수 있다.이것은 때때로 하드웨어의 유용한 단순화일 뿐 아니라 소프트웨어에서도 편리할 수 있다.

비교를 위한 두 개의 보조가 있는 네 개의 비트에 대한 오프셋 이진수 표:[6]

십진법 오프셋 이진
K = 8
투스
보완하다
7 1111 0111
6 1110 0110
5 1101 0101
4 1100 0100
3 1011 0011
2 1010 0010
1 1001 0001
0 1000 0000
−1 0111 1111
−2 0110 1110
−3 0101 1101
−4 0100 1100
−5 0011 1011
−6 0010 1010
−7 0001 1001
−8 0000 1000

오프셋 이진은 가장 유의한 비트를 뒤집어서 두 개의 보완으로 변환할 수 있다.예를 들어, 8비트 값을 사용하는 경우 오프셋 2진수 값을 0x80으로 XOR하여 2의 보완 값으로 변환할 수 있다.전문화된 하드웨어에서는 비트를 그대로 받아들이는 것이 더 간단할 수 있지만, 그 값을 역의의로 적용하는 것이 더 간단할 수 있다.

관련코드

[2][3][7]
코드비교[2][3][7]
코드 유형 매개변수 역기 거리 체크하는 중 보완 5인조 단순 덧셈
오프셋, k 너비, n 요인, q
8421 코드 n[8] 0 4 1 8 4 2 1 1–4 아니요. 아니요. 아니요. 아니요.
누드 코드[8][9] 3n + 2[8] 2 5 3 해당 없음 2–5 9
스티비츠 코드[10] n + 3[8] 3 4 1 8 4 −2 −1 1–4 아니요. 9
다이아몬드코드[8][11] 27n + 6[8][12][13] 6 8 27 해당 없음 3–8 9
25n + 15[12][13] 15 8 25 해당 없음 3+ ?
23n + 24[12][13] 24 8 23 해당 없음 3+ ?
19n + 42[12][13] 42 8 19 해당 없음 3–8 9
십진법
0
1
2
3
4
5
6
7
8
9
8421
4 3 2 1
0 0 0 0
0 0 0 1
0 0 1 0
0 0 1 1
0 1 0 0
0 1 0 1
0 1 1 0
0 1 1 1
1 0 0 0
1 0 0 1
스티비츠[10]
4 3 2 1
0 0 1 1
0 1 0 0
0 1 0 1
0 1 1 0
0 1 1 1
1 0 0 0
1 0 0 1
1 0 1 0
1 0 1 1
1 1 0 0
누드화[8][9]
5 4 3 2 1
0 0 0 1 0
0 0 1 0 1
0 1 0 0 0
0 1 0 1 1
0 1 1 1 0
1 0 0 0 1
1 0 1 0 0
1 0 1 1 1
1 1 0 1 0
1 1 1 0 1
다이아몬드[8]
8 7 6 5 4 3 2 1
0 0 0 0 0 1 1 0
0 0 1 0 0 0 0 1
0 0 1 1 1 1 0 0
0 1 0 1 0 1 1 1
0 1 1 1 0 0 1 0
1 0 0 0 1 1 0 1
1 0 1 0 1 0 0 0
1 1 0 0 0 0 1 1
1 1 0 1 1 1 1 0
1 1 1 1 1 0 0 1
19n + 42[12][13]
8 7 6 5 4 3 2 1
0 0 1 0 1 0 1 0
0 0 1 1 1 1 0 1
0 1 0 1 0 0 0 0
0 1 1 0 0 0 1 1
0 1 1 1 0 1 1 0
1 0 0 0 1 0 0 1
1 0 0 1 1 1 0 0
1 0 1 0 1 1 1 1
1 1 0 0 0 0 1 0
1 1 0 1 0 1 0 1

참고 항목

참조

  1. ^ a b Chang, Angela; Chen, Yen; Delmas, Patrice (2006-03-07). "2.5.2: Data Representation: Offset binary representation (Excess-K)". COMPSCI 210S1T 2006 (PDF). Department of Computer Science, The University of Auckland, NZ. p. 18. Retrieved 2016-02-04.
  2. ^ a b c Dokter, Folkert, Steinhauer, 위르겐(1973-06-18).디지털 전자입니다.필립스 기술 도서관(주요 표적 지역선)/맥밀런 교육(1영어 교육의 Reprint.).아인트호벤, 네덜란드:그 맥밀란 출판 주식 회사/N.V필립스의 Gloeilampenfabrieken. 페이지의 주 44.doi:10.1007/978-1-349-01417-0.아이 에스비엔 978-1-349-01419-4.SBN 333-13360-9..(270페이지)(NB2018-07-01 Retrieved.이것은 2권짜리 독일판 1권의 번역에 바탕을 두고 있다.)
  3. ^ a b c Dokter, Folkert, Steinhauer, 위르겐(1975년)[1969년]."2.4.4.4. Exzeß-e-Kodes".Digitale Elektronik 데르 Meßtechnik에 und Datenverarbeitung:.Theoretische Grundlagen Schaltungstechnik.필립스 Fachbücher(독일어로).권 나는(그리고 5일 교육 확장된 향상되었다.).독일 함부르크:도이치 필립스 회사.를 대신하여 서명함. 51, 53–54.아이 에스비엔 3-87145-272-6.(xii+327+3 페이지)(NB다.제1권 독일판은 1969년, 1971년, 1972년, 1975년 두 판이다.제2권은 1970년, 1972년, 1973년, 1975년에 출판되었다.)
  4. ^ IBM System/360 운영 원칙 양식 A22-6821.WWW에서 제공되는 다양한 버전.[page needed]
  5. ^ Electrical and Computer Science Department, Southeastern Massachusetts University, North Dartmouth, MA, USA (1988). Chen, Chi-hau (ed.). Signal Processing Handbook. New York, USA: Marcel Dekker, Inc./CRC Press. ISBN 0-8247-7956-8. Retrieved 2016-02-04.
  6. ^ "Data Conversion Binary Code Formats" (PDF). Intersil Corporation (published 2000). May 1997. AN9657.1. Retrieved 2016-02-04.
  7. ^ a b Morgenstern, Bodo (January 1997) [July 1992]. "10.5.3.5 Excess-e-Code". Elektronik: Digitale Schaltungen und Systeme. Studium Technik (in German). Vol. 3 (revised 2nd ed.). Friedrich Vieweg & Sohn Verlagsgesellschaft mbH. pp. 120–121. doi:10.1007/978-3-322-85053-9. ISBN 978-3-528-13366-5. Retrieved 2020-05-26. (xviii+393쪽)
  8. ^ a b c d e f g h Diamond, Joseph M. (April 1955) [1954-11-12]. "Checking Codes for Digital Computers". Proceedings of the IRE. Correspondence. New York, USA. 43 (4): 483–490 [487–488]. doi:10.1109/JRPROC.1955.277858. eISSN 2162-6634. ISSN 0096-8390. Archived from the original on 2020-05-26. Retrieved 2020-05-26. (2쪽)(NB).이 보고서에서 논의된 결과는 1950-1951년 펜실베이니아 무어 공과대학의 Joseph M. Diamond and Morris PlotkinBurroughs Adding Machine Co.)와 계약하여 수행한 이전의 연구에 기초하고 있다.
  9. ^ a b Nuding, Erich (1959-01-01). "Ein Sicherheitscode für Fernschreibgeräte, die zur Ein- und Ausgabe an elektronischen Rechenmaschine verwendet werden". Zeitschrift für Angewandte Mathematik und Mechanik. Kleine Mitteilungen (in German). 39 (5–6): 429. Bibcode:1959ZaMM...39..249N. doi:10.1002/zamm.19590390511. (1페이지)
  10. ^ a b Stibitz, George Robert (1954-02-09) [1941-04-19]. "Complex Computer". Patent US2668661A. Retrieved 2020-05-24. [1] (일반 페이지)
  11. ^ Plotkin, Morris (September 1960). "Binary Codes with Specified Minimum Distance". IRE Transactions on Information Theory. IT-6 (4): 445–450. doi:10.1109/TIT.1960.1057584. eISSN 2168-2712. ISSN 0096-1000. S2CID 40300278. (NB. 1951년 1월 펜실베이니아 대학의 연구 부문 보고서 51-20으로도 발행)
  12. ^ a b c d e Brown, David T. (September 1960). "Error Detecting and Correcting Binary Codes for Arithmetic Operations". IRE Transactions on Electronic Computers. EC-9 (3): 333–337. doi:10.1109/TEC.1960.5219855. ISSN 0367-9950. S2CID 28263032.
  13. ^ a b c d e 피터슨, 윌리엄 웨슬리, 웰던, Jr., 에드워드 J.[2월 1971년, 1961년](1972년)."15.3산수는 코데즈 컴바인/15.6Self-Complementing AN+B기준".호놀룰루, 하와이에서 쓰여진.Error-Correcting 코드(2판).매사추세츠 주 캠브리지 미국:미국 매사추세츠 공대(그 MIT출판사)의.를 대신하여 서명함. 454–456, 460–461[456,461년].아이 에스비엔 0-262-16-039-0. LCCN 76-122262.(xii+560+4 페이지).

추가 읽기

  • Gosling, John B. (1980). "6.8.5 Exponent Representation". In Sumner, Frank H. (ed.). Design of Arithmetic Units for Digital Computers. Macmillan Computer Science Series (1 ed.). Department of Computer Science, University of Manchester, Manchester, UK: The Macmillan Press Ltd. pp. 91, 137. ISBN 0-333-26397-9. […] [w]e use a[n exponent] value which is shifted by half the binary range of the number. […] This special form is sometimes referred to as a biased exponent, since it is the conventional value plus a constant. Some authors have called it a characteristic, but this term should not be used, since CDC and others use this term for the mantissa. It is also referred to as an 'excess -' representation, where, for example, - is 64 for a 7-bit exponent (27−1 = 64). […]
  • Savard, John J. G. (2018) [2006]. "Decimal Representations". quadibloc. Archived from the original on 2018-07-16. Retrieved 2018-07-16. (NB. 초과-3, 초과-6, 초과 11, 초과-123을 언급함)
  • Savard, John J. G. (2018) [2007]. "Chen-Ho Encoding and Densely Packed Decimal". quadibloc. Archived from the original on 2018-07-03. Retrieved 2018-07-16. (NB. 초과 25, 초과 250 언급)
  • Savard, John J. G. (2018) [2005]. "Floating-Point Formats". quadibloc. Archived from the original on 2018-07-03. Retrieved 2018-07-16. (NB. 초과-32, 초과-64, 초과-128, 초과-256, 초과-976, 초과-1023, 초과-1024, 초과-2048, 초과-16384를 언급함)
  • Savard, John J. G. (2018) [2005]. "Computer Arithmetic". quadibloc. Archived from the original on 2018-07-16. Retrieved 2018-07-16. (NB. 초과-64, 초과-500, 초과-512, 초과-1024 언급)