2011-06-14 4 views
1

CPU의 레지스터가 고정 길이라는 점을 감안할 때 CPU가 많은 수를 어떻게 처리합니까?어떻게 CPU가 매우 큰 숫자를 처리합니까?

예를 들어 32 비트 시스템에서 2 개의 보수 시스템을 사용하면 정수는 0과 4,294,967,295 사이의 값을 유지할 수 있습니다. 이제 알려진 최대 소수는 12,978,189 자릿수입니다.

최대 소수가 실제로 소수인지 확인하는 과정에서 CPU가 연산을 수행하기 위해 숫자를 어떻게 저장합니까?

+0

간접 참조의 또 다른 계층은 물론 : – harpo

+0

하하 하프 .. http://www.youtube.com/watch?v=EnTqkTT_3nE&feature=related –

답변

4

레지스터는 액세스 할 수있는 총 메모리가 아니라 CPU가 처리 할 수있는 즉시 값을 지정합니다. 종이에 큰 숫자를 추가하는 방법, 한 번에 한 자리 수를 계산하는 방법, 1 또는 2를 들고 이동하는 방법 등을 생각해보십시오. 많은 수로 작업하는 프로그램은 기본적으로 유사한 접근 방식을 사용하지만 최적화가 필요할 수 있습니다. 그 시점의 유일한 제한은 보유한 저장 용량의 양입니다.

+0

+1 유용한 유추. – harpo

관련 문제