벌써 25년 11월이다이전 글이 24년 1월이였다. 신년 계획을 작성한 지 2년차를 무려 2개월 앞두고 25년 회고를 쓰고 있는 것이다. 물론 평생을 작심 삼일로 살아왔던 나에겐 흔한 일이고, 오히려 다시 블로그로 돌아와 회고를 작성하는 나를 대견하게 생각한다. 과연 나는 그 동안 뭔 짓을 했길래 이렇게까지 블로그를 안써왔을까? 나도 이제부터 생각해볼테니 이제부터 알아가보자. 핑계를 대자면먼저, 생각보다 AI가 빠르게 발전해버렸다. 블로그에 전공 글을 써봤자 GPT가 학습.. 이라도 해주면 고마울 정도로 많은 정보를 학습하여 내 블로그에 들어왔을 사람들에게 더 양질의 정보를 제공해버리고 있다. 조회수 올라가는거 보려고 글을 쓰는 사람에게 이처럼 참혹한 환경이 어딨단 말인가. 글 재주가 없는 내겐 GPT보..
분류 전체보기
인턴 시작저는 2024년 대학생 인턴으로 삼성 생활을 시작했습니다! 인턴은 공채랑 거의 같은 과정으로 뽑히는데요, 저 같은 경우 SW 직군이라 GSAT은 보지 않았고, 서류 → 코딩테스트 → 면접 순으로 진행했습니다. 공채분들과 함께 코딩 테스트를 보고, 면접도 같이 보기 때문인지 이후 전환할 때는 서류와 코테는 면제였습니다. 당시 서류를 쓸 때 제 스펙은.. 1. 경기권 상위 대학 4.12 / 4.52. 프로젝트 리딩 경험 3회3. 교내 수상 3회, 대외 수상 1회4. 타사 인턴 경험 1회5. 학회 / 동아리 운영 경험, 대회 개최 경험6. OPIC IL (...) 솔직히 6번 때문에 떨어질 거라 생각했어요ㅋㅋㅋ 서류 넣어보려고 준비 없이 봤다 해도 IL이라니.. 하지만 개발 직군쪽이라 그런건지 크게..
문제 내용문제 링크 우리가 아는 그 주사위가 있다. 또, (N*M)의 지도가 있다. 주사위의 초기 숫자는 모두 0이며, 놓여진 위치는 x,y로 주어진다. 규칙은 다음과 같다.주사위가 이동할 때, 이동한 (지도의) 칸이 0이라면 주사위 바닥면에 쓰여 있는 수가 칸에 복사된다.0이 아니라면 칸에 쓰여있는 수가 주사위의 바닥면으로 옮겨진다. (칸은 0이 된다)주사위는 지도 바깥으로 이동할 수 없다. (즉 바깥으로 이동하는 명령은 무시한다.)주사위의 초기 좌표, 지도가 주어졌을 때 각 명령에 대해, 명령대로 이동한 다음 주사위 윗 면의 수를 출력한다. 문제 풀이역시나 삼성 코딩테스트 기출 문제인 만큼 구현에 집중하자. 본인은 주사위의 인덱스에 집중했다. /* 초기값 인덱스 * X 1 X X 0..
문제 설명문제 링크 집은 격자판 (R*C)로 나타낸다. 로봇청소기는 항상 첫 번째 열에만 위치하고, 두 개의 행을 차지한다. 다시 말해, (2*1)의 크기이다. 또 각 칸에 있는, 0초 시점의 미세먼지가 주어진다. 미세먼지는 확산 가능한데, 이는 매초마다 이뤄지며 동시에 일어난다. (r,c)에 있는 미세먼지는 인접한 네 방향으로 확산되고, 인접한 방향이 공기청정기나 벽으로 막혀있다면 확산이 발생하지 않는다. 확산되는 양은 A(r,c)/5이고 소수점은 버린다. (r,c)에 남은 양은 기존 미세먼지 양에 확산된 총량을 제한 크기이다. 미세먼지가 확산되고 나서, 공기청정기가 작동한다. 공기청정기에서는 바람이 나오는데, 위쪽 공기청정기는 반시계 방향, 아래쪽 공기청정기는 시계방향으로 순환한다. 바람의 방향대로..
세상 매우 귀찮게 구현해야하는 문제를 이렇게 짧은 지문만으로 제시하는 것도 출제자의 역량이라 생각한다.문제 설명문제 링크삼성 코딩테스트 대비 문제집에 있는 문제로, 문제 자체는 간단하다. 우리가 흔히 아는 3*3*3의 정육면체 큐브가 주어지고, 이 큐브를 주어진 방법대로 돌린다. 예를 들어, U+는 윗 면을 시계 방향으로 돌린다. 문제 풀이아마 이 문제를 푸는 사람 중 절대 다수는 삼성 코테 준비하는 사람들일 것이다. 사실, 삼성 코테, 즉 어드밴스급은 최적화가 그닥 필요 없다. 그냥 문제에서 주어진대로. 문제를 함수 단위로 쪼개서 풀면 된다. 따라서 나름 객체지향적 사고가 필요하다. 본인은 (테스트케이스가 있는 문제인 만큼) 초기화 함수를 만들었다. 초기 각 면의 색상이 정해져 있으므로 그 색깔로 큐..
세그먼트 셀렉터논리 주소를 선형 주소로 빠르게 변환하기 위해 인텔 프로세서는 여섯 개의 프로그래밍 가능한 세그먼테이션 레지스터 각각에 프로그래머가 설정할 수 없는 레지스터를 추가로 제공한다. 이 레지스터는 각각 자신과 연계된 세그먼테이션 레지스터에 들어 있는 세그먼트 셀렉터가 지정한 8바이트 크기의 세그먼트 디스크립터를 포함한다. 세그먼트 셀렉터를 세그먼테이션 레지스터로 로드할 때마다 해당 세그먼트 디스크립터를 메모리에서 대응하는 프로그래밍 불가능한 CPU 레지스터로 로드한다. 이때부터 이 세그먼트를 참조하는 논리 주소 변환은 주 메모리에 저장된 GDT나 LDT에 접근하지 않고도 수행할 수 있게 된다. 프로세서는 세그먼트 디스크립터를 포함한 CPU 레지스터를 직접 참조하면 된다. GDT나 LDT에 직접..
실제 모드와 보호 모드이는 메모리 변환 방법의 종류로, 실제 모드는 예전 모델에서 사용한 보호 기능이 거의 없는 주소 변환 방법이다. 메모리 주소를 20비트로 계산하여 최대 1MB의 메모리를 접근할 수 있고 주소 변환 방식은 세그먼트:오프셋 방식이다. 즉, 세그먼트 레지스터와 오프셋을 조합하여 물리적 주소를 계산한다. 반면 보호모드는 인텔 마이크로프로세서 80386 모델부터 도입된 모드로, 32비트 주소 지정이 가능하며 최대 4GB 메모리에 접근 가능하다. 보호모드의 핵심은 메모리 보호와 멀티태스킹 지원이다. 아래 내용은 보호모드와 관련된 포스팅이다. 세그먼테이션 레지스터논리 주소는 세그먼트 식별자와 세그먼트 내 상대적인 주소를 나타내는 오프셋으로 이뤄진다. 세그먼트 식별자는 세그먼트 셀렉터라 하는 1..
논리 주소기계어 명령에서 피연산자의 주소나 명령어 주소를 지정할 때 사용한다. 논리 주소는 세그먼트와 세그먼트의 시작부터 실제 주소까지의 거리를 나타내는 오프셋으로 이루어진다. 즉, CPU의 프로그램 카운터(PC)나 명령어에서 직접 참조하는 주소로, CPU의 세그먼트 레지스터와 함께 형성된다. 프로그램이 직접 사용하는 주소이며, 물리 메모리 주소와는 다를 수 있다. CPU는 이 주소를 메모리 관리 장치(MMU)를 통해 변환한다. 논리 주소는 세그먼트 기법을 통해 선형 주소(가상 주소)로 변환된다. 선형 주소가상 주소라고도 불리는 선형 주소는 논리 주소가 세그먼트 기법을 통해 변환된 결과이다. 세그먼트란 페이지와 다르게 가변적인 크기의 논리적 블록을 뜻한다. 세그먼트 기법은 이러한 세그먼트로 메모리를 나..