일 | 월 | 화 | 수 | 목 | 금 | 토 |
---|---|---|---|---|---|---|
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 |
- c++
- 파이썬
- 자료구조
- uuid-ossp
- mistel키보드
- 어셈블리
- 창업
- 쿠버네티스
- 스타트업
- raycasting
- 부동소수점
- 레이캐스팅
- psql extension
- GraphQL
- 동료학습
- Cloud Spanner
- 엣지컴퓨팅
- 텍스트북
- schema first
- 이노베이션아카데미
- 42seoul
- 스플릿키보드
- 어셈블리어
- adminbro
- SFINAE
- 정렬
- 프라이빗클라우드
- 42서울
- 도커
- enable_if
- Today
- Total
목록분류 전체보기 (111)
written by yechoi
야속하게도 코로나는 또 퍼졌고, 막 퍼지기 시작할 시점인 2주전 학교는 또 문을 닫았다. 재택공부는 어려워 대구 확산 때야 서울에 확진자가 많지 않으니, 스터디카페나 카페에서 공부하곤 했지만 이번엔 상황이 좀 달랐다. 확산세가 수도권에서 보이니, 카페에서 공부를 할 수 없는 노릇이었다😂 실제로 스타벅스에서 집단감염이 일어나기도 했고. 집에서 공부를 하는데, 영 집중이 안됐다. 지난 코로나 때의 경험을 살려, 공부와 휴식의 공간을 구별하기로 했다. 같이 재택을 하게 된 동생, 엄마, 나 이렇게 셋이 거실을 사무 공간처럼 만들어놨다. 그런데도 집 나간 집중력은 돌아오지 않는 것... 아무래도 평상시에 집에선 주로 잠을 자서 그런지, 집 자체가 휴식의 공간이라는 의미가 강하다. 학교가 쉬는 김에 한달 정도 다..
const const int num = 10; # 변수 num을 상수화 const int *ptr1 = &val1; # 포인터 ptr1을 이용해서 val1의 값을 변경할 수 없음 int *const ptr2 = &val2; # 포인터 ptr2가 상수화됨 const int * const ptr3 = &val3; # 포인터 ptr가 상수화됐으며, ptr3을 이용해 val3의 값을 변경할 수 없음 bool true, false를 나타내는 자료형. true와 false는 참거짓을 표현하기 위한 1바이트 크기의 데이터이나, 출력하거나 정수 형태로 형변환하는 경우에는 각각 1과 0으로 변환되도록 정의돼 있다. bool형 자료형을 선언하는 것도 가능. 참조자 int num1 = 1020; int &num2 = num..
2> /dev/null standard error(2, 표준에러)를 /dev/null로 보내 출력하지 않음. standard output(1, 표준출력)만 출력함 1> /dev/null standard output(1, 표준출력)을 /dev/null로 보내 출력하지 않음. standard error(2, 표준에러)만 출력함 > /dev/null 아무것도 출력 안함. 에러도 일반 결과물도.
** macos, intel syntax 기준 ** section .text global _ft_read extern ___error _ft_read: mov rax, 0x2000003 syscall jc _err ret _err: push rax call ___error pop rdx mov [rax], rdx mov rax, -1 ret read()를 재구현해놓은 어셈블리 코드다. 위 코드를 바탕으로 에러를 처리하는 방법을 정리한다. syscall로 read 함수 호출하기 _ft_read: mov rax, 0x2000003 syscall rax에 넣어놓는 값에 따라 syscall로 호출되는 함수가 다르다. 1은 exit, 4는 write. 여기선 read() 함수를 호출하기 위해, rax에 3을 넣어..
cub3d는 레이캐스팅을 이용해 원시적인 일종의 3D 게임을 구현하는 과제다. 여기서 레이캐스팅이란 단어에서 짐작해보자면, 광선(ray)을 던져(cast) 현재 위치에서 벽(또는 장애물)이 충돌하는 지점을 찾아 거리를 구하는 방식이다. 원시적인 3D게임인 울펜스타인은 이 방식으로 만들어졌다. 처음 과제를 마주했을 때 든 생각은 '내가 이걸 한다고?'였다. 앞선 과제인 printf 구현도 각종 플래그 때문에 까다로웠지만, 그건 그래도 '어떤 방식으로 해야겠다'는 짐작은 드는 정도였다. 그런데 cub3d는 뭐부터 해야 하는지 감이 전혀 안왔다. 아무 것도 없는 상탠데 어떤 코드를 쓰면 저런 그림이 나오는지요... 레이캐스팅을 이해하고 구현하는 것도 어렵지만, 이 밖에도 cub3d에선 해줘야 할 부가적인 것들..