volatile 썸네일형 리스트형 [AVR_C] Volatile 변수에 대해서 AVR C 에서는 Volatile변수를 주로 사용한다. 이는 컴파일할때 최적화를 막아주기 위함이라고 하는데, 솔직히 이해안되서 그냥 모든 변수를 volatile이라고 선언해 주다가.... 이제 좀 알겠다 싶어 적는다. Volatile은 위에서 말한데로 컴파일하는데 최적화를 막아주는 방법이다. 컴파일할때 최적화를 시켜주는 경우가 있는데 한 변수가 바뀌는 코드가 없이 한 코드안에서 계속 사용되면, 이 변수를 얻으러 메인메모리까지 가기가 귀찮아서 로컬레지스트에 저장해놓는다. 예를 들어 int i = 100; 해놓고 아래에서 setValue(i); 뭐 이런식으로 만 쭈욱 써놨지, i = i+20; 처럼 변수를 변형하는 꼴이 없다면 그냥 가까운 곳에 복사해놓는다는 것이다. 하지만 문제가 되는게, 특히 임베디드 시.. 더보기 이전 1 다음