목록Develop (134)
오븐 노트
char : 알파벳 / 숫자 문자를 나타냄 wchar_t : 유니코드 문자를 나타냄 (문자열 앞에 유니코드 선언 L 표기 필요) ASCII : American Standard Code for Information Interchange) 작은 따옴표 사용 시 해당 문자에 맞는 아스키 코드가 저장됨 'a' + 1 => ASCII 기준 97 + 1 -> b 출력 unicode : 영어만으로 서비스 할 수는 없어서 전 세계 모든 문자에 대해 유일 코드를 부여한 것 유니코드에서 가장 많은 번호를 차지하는 언어 : 한국어, 중국어 UTF-8 알파벳, 숫자 1byte (ASCII 동일한 번호) 유럽 지역의 문자는 2byte 한글, 한자 등 3byte UTF-16 알파벳, 숫자, 한글, 한자 등 대부분 문자 2byte..
boolean : true or false 어셈블리에서는 bool 자체가 존재하지 않음 실수 == 부동소수점 부동 : 不x 浮o 소수점을 유동적으로 움직여서 표현하는 방법 float : 4byte (뒤에 f를 붙여줘야 인식됨) double : 8byte 유효숫자 * 지수 float : 부호(1bit) 지수(8bit) 유효숫자(23bit) == 32bit == 4byte double : 부호(1bit) 지수(11bit) 유효숫자(52bit) == 64bit == 8byte ex) 2진수 변환 1) -3.375 저장 2) 3 = 0b11 3) 0.375 = (정수에서 자릿수마다 2배씩 증가하였다면 소수점에서는 자릿수마다 2배씩 감소) 0.5 * 0 + 0.25 * 1 + 0.125 * 1 = ..
alt+8 -> 디스어셈블리 : 디버깅 상태에서 로우레벨까지 확인하고 싶을 때 ctrl + K + C(Comment) : 주석 ctrl + K + U(UnComment) : 주석 해제 .data 영역 : 0이 아닌 초기화 값이 있다면 .bss 영역 : 초기값이 0이거나, 초기값이 없는 변수라면 char : 1 byte (-128 ~ 127) short : 2byte (-32768 ~ 32767) int : 4byte (약 -21.4억 ~ 약 21.4억) __int64 == longlong : 8byte unsigned : 최상위 부호를 무조건 양수로 본다. unsigned char : 1 byte (0 ~ 255) unsigned short : 2byte (0 ~ 65536) unsigne..
Visual Studio : https://visualstudio.microsoft.com/ko/ 프로그램 실행: 또는 [디버그] > [디버깅하지 않고 시작] 메뉴 프로그램 디버그: 키 또는 [디버그] > [디버깅 시작] 메뉴 https://www.inflearn.com/course/%EC%96%B8%EB%A6%AC%EC%96%BC-3d-mmorpg-1/dashboard [C++과 언리얼로 만드는 MMORPG 게임 개발 시리즈] Part1: C++ 프로그래밍 입문 - 인프런 | 강의 C++ 카테고리의 글은 인프런 Rookiss님의 강의를 공부하며 정리하는 내용입니다. 이미 알고 있는 내용도 다시 정리 되어있을 수 있습니다. 모든 글은 제가 공부하기 위해 작성합니다.
메모리 저장구조 컴파일시 크기 결정 CODE 함수, 제어문, 상수 영역 DATA 전역 변수 BSS 전역 변수 Run time시 크기 결정 HEAP 동적 할당 STACK 지역 변수 스택 (stack) : 함수가 사용하는 일종의 메모장 - 매개 변수 전달 - 돌아갈 주소 관리 레지스터 - a b c d 범용 레지스터 - 포인터 레지스터 ㄴ ip (Instruction Pointer) : 다음 수행 명령어의 위치 ㄴ sp (Stack Pointer) : 현재 스택 tap 위치 (일종의 cursor) ㄴ bp (Base Pointer) : 스택 상대주소 계산용 https://www.inflearn.com/course/%EC%96%B8%EB%A6%AC%EC%96%BC-3d-mmorpg-1/dashboard [..
LABEL_LOOP: mov ecx, 10 -> ecx에 10 선언 dex ecx -> sub ecx, 1과 동일함 inc ecx -> add ecx, 1과 동일함 cmp ecx, 0 -> ecx가 0이 되었는가 jne LABEL_LOOP -> 같지 않다면 다시 실행 loop [라벨] - ecx에 반복 횟수 선언 - loop 할때마다 ecx 1감소. 0이면 빠져나가고 아니면 라벨로 이동 https://www.inflearn.com/course/%EC%96%B8%EB%A6%AC%EC%96%BC-3d-mmorpg-1/dashboard [C++과 언리얼로 만드는 MMORPG 게임 개발 시리즈] Part1: C++ 프로그래밍 입문 - 인프런 | 강의 Assembly 카테고리의 글은 인프런 Rookiss님의 ..
CMP dst, src (dst가 기준) 비교 결과물은 Flag Regisrer에 저장됨 JMP [label] 시리즈 (모든 if 조건과 비슷) JMP : 무조건 jump JE : JumpEquals 같으면 jump JNE : JumpNotEquals 다르면 jump JG : JumpGreater 크면 jump JGE : JumpGreaterEquals 크거나 같으면 jump 등등 https://www.inflearn.com/course/%EC%96%B8%EB%A6%AC%EC%96%BC-3d-mmorpg-1/dashboard [C++과 언리얼로 만드는 MMORPG 게임 개발 시리즈] Part1: C++ 프로그래밍 입문 - 인프런 | 강의 Assembly 카테고리의 글은 인프런 Rookiss님의 강의를..
not : 조건이 거짓일 경우 1, 참일 경우 0 and : 두 조건 모두 참일 경우 1, 하나라도 거짓일 경우 0 or : 두 조건 중 하나라도 참일 경우 1, 전부 거짓일 경우 0 xor : 두 조건 중 하나가 참이고 하나가 거짓일 경우 1, 두 조건 모두 참이거나 거짓일 경우 0 ㄴ 동일한 값으로 두번 xor시 자기 자신으로 되돌아오는 특성을 가짐 (암호학에서 유용) 시프트 연산자 : 이진수 비트 이동 연산자 (비트 크기를 넘어서는 연산 실행 시 넘치는 비트는 소멸 / 부호 비트 주의) https://www.inflearn.com/course/%EC%96%B8%EB%A6%AC%EC%96%BC-3d-mmorpg-1/dashboard [C++과 언리얼로 만드는 MMORPG 게임 개발 시리즈] Par..