개인 프로젝트로서 나는 내 애완 동물 프로젝트에 임의의 정밀 숫자 형식을 구현하려고합니다.부호없는 계산이 오버플로 될 가능성이 있다면 사전에 결정하는 방법은 무엇입니까?
이미 널리 알려지고 테스트되고 강력한 라이브러리에 대해 알고 있습니다. 나는 자기 개선 교육 프로젝트로서 해결책을 찾고 싶다.
나는 지역을 연구하고 실제로 계산을하기 전에 작업이 오버 플로우가 발생할 경우 대략 예측 몇 가지 방법이 있는지 알아 내려고 노력하고 있어요. 나는 위양성에 대해서도 그렇게 걱정하지 않는다.
나는 계산에 적합한 가장 작은 공간을 사용할 수 있기를 원합니다. 계산이 원래 경계 내에서 유지되는 경우에는 그대로 유지합니다.
예 : Multiplying two 64 bit Integers if each are large enough will cause an overflow.
결과를 일 수 있고이 64 비트를 초과하는 경우에만이를 감지하고 내 번호 유형으로 업 변환합니다. 이 실험에서 부호가 번으로 사용됩니다.
오버 플로우/언더 플로우를 감지하는 가장 제정하고 효율적인 방법은 무엇입니까? 그 숫자의 : (곱하기 예) 오버 플로우를 일으킬 것입니다, 당신은 오버 플로우에 대한 좋은 기회이
필자는 비슷한 프로젝트를 시도한 적이 없었으므로, 단지 질문이있었습니다. 미리 오버플로에 대해 알고 있었습니까? 작은 nmbers에 대한 최적화가 빠르지 않습니까? 정확한 해결책이 필요하거나 허위 오버플로 경보를 줄 수있는 해결책을 받아들일까요? – vmatyi
귀하의 질문과 답변 중 하나에 대한 답변으로 귀하가 서명 된 피연산자를 사용하고 있지만 제목에 서명이 없다고 말하고 있습니다. 무엇 이니?부호없는 산술은 다루기가 더 쉽고 임의의 정밀도 숫자로 작업하는 것이 더 적합합니다. –
베이스를 나타내는 부호없는 64 비트 길이의 배열에서와 같이 부호없는 기본 유형을 기본 구성 요소로 사용하여 부호가있는 임의의 계산을 수행합니다. –