-
프로그램의 성능향상 ( 쇼트서킷 )C언어 2020. 2. 24. 15:49
쇼트서킷이란 ?
하지 않아도 될 연산을 생략해 논리 연산식의 효율을 높이는 것 이다.
1. 논리 연산식은 무조건 왼쪽에서 오른쪽으로 수행한다.
2. OR 논리식은 조건에 만족하면 이후 연산을 생략한다. 즉 앞에 위치한 조건이 참일 경우 OR 논리에 의해 뒤의 연산은 수행하지 않고 바로 참을 반환한다.
3. AND 논리식은 조건에 만족하지 않으면 연산은 생략한다. 즉 앞에 위치한 조건이 거짓일 경우 AND 논리에 의해 뒤의 연산은 수행하지 않고 바로 거짓을 반환한다.
4. 혼합 논리식에서 AND는 한 덩어리로 묶고 OR의 연속으로 살핀다.
EX ) nAge >= 20 && nAge <= 30 || nHeight >= 150
위와 같은 쇼트서킷을 활용하여 프로그램을 작성하면 성능향상에 도움을 준다. 그렇다면 어떤식으로 쇼트서킷을 활용해야 하나 ?
1. 쉬운연산을 먼저 수행시킨다. 즉 CPU가 빠른 속도로 연산할 수 있는 속도로 수행시킨다.
2. 해당 연산식이 자주 적중할 순서대로 작성한다.
'C언어' 카테고리의 다른 글
함수 기본 이론 (0) 2020.02.28 배열의 주소와 이름의 관계 (0) 2020.02.26 연산자 (sizeof), 디스어셈블 (0) 2020.02.24 정수의 입력 함수 (scanf), 버퍼의 추상화 (0) 2020.02.19 문자(배)열 과 gets, puts (문자열 I/O 함수) 함수 (0) 2020.02.18