Excel은 기호 10진수를 2진수로 변환합니다.

2262 단어 Excel
는 최근에 Excel에서 범위가 -1023~+1023인 데이터를 2진법으로 바꾸는 데 사용해야 하는데, 사실 이 문제는 Matlab프로그래밍을 통해 충분히 해결할 수 있지만, 얻은 결과를 Excel 표에 다시 복사하는 것도 그다지 편리하지 않기 때문에 Excel의 공식으로 10진법 2진법 조작을 직접 하려고 한다.
  Excel에서 10진법 전이진법을 가진 함수DEC2BIN가 바로 이 함수입니다. 이 함수의 용법을 살펴보겠습니다. 이 함수는 두 개의 매개 변수가 있습니다.number[places]. 여기[places]는 사용할 문자수를 가리키는데 무슨 뜻입니까? 먼저 간단한 예를 보겠습니다.
  =DEC2BIN(2)
  =DEC2BIN(2,3)
  =DEC2BIN(2,0)

우리 먼저 첫 번째 식을 봅시다. 이 식의 계산 결과는 11입니다. 답은 매우 명백합니다.그럼 제가 지금 스타일을 밑에 있는 걸로 바꿀게요. 결과는 뭘까요?두 번째 식의 결과는 011이다. 즉, [places]의 뜻은 마지막에 생성된 문자열의 길이이다. 만약에 우리가 지금 세 번째 식이 있다면 이 식의 결과는 무엇일까.프로그래밍 직감은 나에게 답안은 일식과 같아야 한다고 알려주었다. 그러나 유감스럽게도 내가 틀렸다. 결과는 #NUM! 였다.실제 길이[places]를 초과하면 오류가 되돌아온다는 뜻이다.
  이 매개 변수를 다 보고 나서 [places] 이 매개 변수를 다시 한 번 봅시다.이 매개 변수의 범위는 number 이다.하지만 내가 지금 처리하고 싶은 데이터 범위는 - 1023~1023인데 어떻게 하지?우선 음수의 그 부분을 상관하지 않고, 나는 우선 정수의 이 부분만 고려한다.511보다 큰 정수를 어떻게 2진법으로 바꿀 것인가.나중에 생각해 보니, 이 수를 두 부분으로 나누고, 우리 이 정수를 A로 합시다.일부는 A를 512로 나누어 얻은 정수 결과이고, 다른 일부는 A를 512로 나누어 얻은 업체이다. 우리는 각각 이 두 부분을 B와 C로 설정했다. 분명히 하나는 512보다 작다.×512의 A, 얻은 B와 C는 모두 512 이내이다. 그러면 우리는 B와 C에 대해 각각 10진법 2진법 연산을 하면 정확한 결과를 얻을 수 있다.
그러면 어떻게 음수를 고려할 것인가, 우리는 양과 음의 2진법 간의 관계를 고려해 보자.범위가 -1023~+1023 사이의 숫자에 대해 그 2진법은 11자리로 표시할 수 있다. -512~511에서 11자리로 전환된 기호 2진수를 고려해 본 결과 -1.우리는 가장 높은 자리를 던져 버렸다. 바로 10개의 1이다. 이 문자열을 무기호형 10진 정수로 생각하면 1023이다.즉, -1023~-1의 음수에 대해 11자리의 2진수로 전환했는데 그 최고위는 1이고 뒤의 10자리는 바로 이 값에 1024의 결과를 얻은 2진수를 더하여 다음과 같은 코드를 썼다.11111111111
   이 코드는 무슨 뜻입니까? 우선 IF문장입니다. 현재 위치의 수가 정수인지 마이너스인지 판단하고 정수라면 앞부분을, 마이너스면 뒷부분의 내용을 실행합니다.정수 상황에서 이 수치를 두 부분으로 나누어 512를 나누어 얻은 상을 하나의 2자리의 2진법 수치로 바꾸는 것은 1024보다 작기 때문에 이 2진법의 1위는 틀림없이 0이 될 것이라고 짐작할 수 있다.512로 나눈 나머지를 9자리로 변환한 결과그래서 1024보다 작은 정수에 대해 2진수는 구할 수 있다.여기서 주의해야 할 세부 사항은 이곳의 등호에 있다. 일반적인 상황에서 같은 상황은 양쪽이 성립될 수 있지만 여기는 아니다. 앞의 상황만 만족할 수 있고 뒤의 상황은 가득 차지 않는다. 0+1024=1024이기 때문에 1024는 반드시 11비트 2진법으로 표시해야 한다.
   후반부는 음수 상황에서 구한다. 우리는 먼저 이 음수를 1023을 더한 다음에 얻은 이 정수를 11자리의 2진수로 바꾸었다. 전환 방법은 앞의 것과 일치한 다음에 앞에 기호위 1을 추가하여 11자리의 기호형 2진수를 구성했다.
442 => 00110111010
-63 => 11111000001

   계산 결과를 보니 계산이 정확하다는 것을 알 수 있다.

좋은 웹페이지 즐겨찾기