매우 빠른 프로그램을 개발하고 있습니다.C++ 프로그램에서 _asm 코드를 사용하면 차이가 있습니까?
나는 C++로 만들 것이고 XOR과 같은 논리적 연산을 많이하거나 2 진수에서 1의 수를 계산해야하기 때문에 _asm{}
을 사용하는 것이 좋습니다. 이러한 작업을 더 빠르게 수행 할 수있는 코드 일부. 그들은 때때로 수백만 번 처형 될 것입니다.
하지만 실제로 효과를 발휘할만한 가치가 있는지는 알 수 없습니다.
누군가가 시험해보기 전에 그 주제에 대한 지식을 높이 평가 해주시기 바랍니다.
고마워요.
* 조기 최적화는 모든 악의 뿌리입니다. * - Donald Knuth. :) 첫째, C++에서 작동하도록하십시오. 그런 다음 프로파일 링하여 병목 현상을 찾습니다. 그런 다음 코드를 알고리즘 적으로 향상시키는 방법을 살펴보십시오. 그리고 그것이 충분하지 않으면, asm을 시도하십시오. –
숫자에 설정된 비트 수를 계산하려면 조회 테이블을 사용해야합니다. – jxh
논리 연산의 경우 일반적으로 차이가 없습니다. 이진수로 1의 수를 세는 명령이 있지만 CPU가 명령을 지원하는지 여부에 따라 달라 지므로이를 달성하기 위해 비트 피딩 해킹을 사용하는 것이 좋습니다. – nhahtdh