프로젝트 개발을 다른 사람들과 협업하여 진행하게 되면 자주 듣는 용어가 있는데, 그 중 하나가 코딩 컨벤션(coding convention) 입니다. 코딩 컨벤션이란, 읽고 관리하기 쉬운 코드를 작성하기 위한 일종의 코딩 스타일 규약입니다. 느닷없이 갑자기 코딩 컨벤션을 왜 설명하냐고요? 컨벤션이라는 용어 자체가 협업 상황에서 자주 언급되는 단어이지만, 좀 더 저수준(low-level)에서도 쓰이기 때문입니다. 제목을 보고 이미 짐작을 하시리라 생각됩니다. 호출 규약(콜 컨벤션, calling convention) 이란, 호출자(caller)와 피호출자(callee) 간의 함수의 인자를 전달하는 방식에 대한 규약을 정의한 것을 의미합니다. 위키피디아에서는 호출 규약을 다음과 같이 정의하고 있습니다 : 컴..
이번 포스팅에서는 2의 보수에 대해서 알아보겠습니다. 먼저 보수란, '보충하는 수', '수를 거꾸로 세는 방식' 등을 의미합니다. 일반적으로 N진법에 대해서 N의 보수와 N-1의 보수가 존재하며 다음과 같습니다 : N의 보수 : 자릿수를 한 자리 늘리기 위해서 필요한 보수. 10진수 33의 10의 보수 : 100 - 33 = 67 N-1의 보수 : 같은 자릿수에서 가장 큰 값이 되기 위해 필요한 보수. 10진수 33의 9의 보수 : 99 - 33 = 66 N진법에 대한 N의 보수 및 N-1의 보수는 아래에서 2진법에 대한 2의 보수 및 1의 보수로 연결되니 이해하시면 좋습니다. 컴퓨터의 음수 표현 우리가 음수를 표현할 때에는 - 부호를 선택함으로써 음수를 표기할 수 있습니다. 하지만, 0과 1로 구성된 ..
메모리 얼라인먼트는 레퍼런스마다 데이터 구조 얼라인먼트(Data Structure Alignment), 데이터 얼라인먼트(Data Alignment) 등으로 불리기도 하며, 위키피디아에서는 다음과 같이 개요가 작성되어 있습니다: Data structure alignment는 컴퓨터 메모리에서 데이터가 정렬되고 액세스되는 방식을 나타냅니다. 데이터 정렬, 데이터 구조 패딩(padding), 패킹(packing) 과 같은 세 가지 개별적인 관련 문제로 구성됩니다. 최신 컴퓨터 하드웨어의 CPU는 데이터가 자연스럽게 정렬 (naturally aligned) 될 때(일반적으로 데이터 주소가 데이터 사이즈의 배수일 때) 메모리에 대한 읽기 및 쓰기를 가장 효율적으로 수행할 수 있습니다. 데이터 얼라인먼트는 정렬되..
- Total
- Today
- Yesterday
- 퍼포스 개요
- code copyright
- C++
- Perforce Streams
- visual studio hot reload
- Perforce Stream
- 언리얼 엔진
- 행렬
- C# 람다식
- MSVC C1083
- Auto
- C# lambda expression
- C++ Compile error
- 알고리즘
- c++ hot reload
- P4 Streams
- GoogleTest
- Visual Studio C1083
- c++ 핫 리로드
- C# 익명함수
- game hot reload
- DXGI
- P4 Stream
- 퍼포스 스트림
- 코드 저작권
- UE4
- 구글테스트
- 구간합
- C7568
- visual studio 핫 리로드
일 | 월 | 화 | 수 | 목 | 금 | 토 |
---|---|---|---|---|---|---|
1 | 2 | 3 | 4 | 5 | 6 | 7 |
8 | 9 | 10 | 11 | 12 | 13 | 14 |
15 | 16 | 17 | 18 | 19 | 20 | 21 |
22 | 23 | 24 | 25 | 26 | 27 | 28 |
29 | 30 | 31 |