전체 글

전체 글

    [어셈블리어] 헷갈리는 것들 ! 정리

    LODS, LODSB, LODSW, LODSD(Load String Byte, Word, DWord) - ESI가 가르키는 곳에서 지정한 크기(Byte, Word, DWord) 만큼 읽어와 EAX에 복사한다. ESI는 복사한만큼 이동한다. TEST , - 이 연산은 대부분이 과 가 같게 설정된다. 예를들면 TEST EAX, EAX. 이 연산은 논리회로의 AND연산을 수행하지만 결과값을 저장하지 않는다. 단지 EAX=0일경우 ZF=1이 되고 EAX!=0일경우 ZF=0이 된다. 그리고 OF, CF는 0이된다. PUSHAD EAX, EBX, ECX, EDX, ESI, EDI, ESP, EBP 레지스터의 값을 스택에 PUSH한다.저장순서는 EAX > ECX > EDX > EBX > ESP > EBP > ESI ..

    [C/C++] 미리 컴파일된헤더(Precompiled Header)? 컴파일 시간을 줄여봅시다!

    미리컴파일된 헤더(Precomplied Header) 란? 말그대로 헤더를 미리 컴파일 해두는겁니다 . 프로그램을 만들다보면 어쩔수없이 프로그램의 몸집은 점점 불어가죠 프로그램이 커지면 전처리기가 컴파일해야될 헤더도 엄청나게 많아질텐데요 컴파일 시간이 늘어나는건 당연하겠죠? 이 컴파일 시간을 효과적으로 줄여줄 수 있는 방법을 소개합니다. 조금더 자세하게 말씀드리면 .. 미리컴파일된 헤더(Precompiled Header) 는 자주변경되지 않는 긴소스를 미리 컴파일하여 컴파일결과를 별도의 파일에 저장하여, 다시 똑같은 헤더를 컴파일시 해당파일을 처음부터 컴파일하지않고 미리컴파일된 헤더 파일을 사용해 컴파일 속도를 월등히 향상시켜줍니다. 예를들면 windows.h 같은 덩치가 매우큰 녀석들을 사용할때 말이죠..

    [C/C++] main은 알겠는데.. wmain, _tmain 는 무엇일까요?

    Main 이란? int main(int argc, char* argv[]) -세번째 입력 인수가 있긴하지만 잘안쓰죠main은 무엇일까요? 다들 아시다시피 main 이라는 특수함수는 모든 c및 c++ 프로그램이 실행이 시작되는 지점입니다. int wmain(int argc, wchar_t* argv[])그럼 wmain은 무엇일까요? msdn에 따르면 "유니코드 프로그래밍모델을 따르는 코드를 작성하는경우 main 의 와이드 문자버전인 wmain을 사용할 수 있습니다" 라고 합니다. int _tmain(int argc, _TCHAR *argv[]) _tmain은 _UNICODE가 정의되지 않은 한 main으로 확인됩니다. _UNICODE가 정의된 경우에는 _tmain이 wmain으로 확인됩니다. 유니코드가 정..