CS 기초

IT 지식/CS 기초

가장 큰 수 찾기

카드를 나열하는 방법모든 카드는 그림1과 같이 뒷면이 보이도록 나열하며, 카드 앞면에는 0~4까지 숫자가 적혀있으며 같은 숫자는 없다고 가정한다.A는 B의 지시에 따라 카드를 뒤집어 볼 수 있다.B는 카드를 한 번에 두 장만 뒤집어 보라고 A에게 부탁할 수 있으며 A는 두 카드 중 어떤 카드의 값이 더 큰지 알려준다. 단 숫자를 알려주지는 않는다.A의 답을 듣고 B가 원한다면 두 카드의 위치를 바꿀 수 있다.어떤 카드부터 어떤 순서로 뒤집어 볼지는 온전히 B의 마음이다.이제 가장 적은 회수로 카드를 뒤집어 보고 가장 큰 수를 찾거나, 가장 작은 수를 찾아본다.  가장 큰 숫자 찾기기준 카드와 대상 카드1을 비교한다. (시작)대상 카드1이 크면 기준 카드와 자리를 바꾼다.기준 카드와 대상 카드2를 비교한다..

IT 지식/CS 기초

프로그래밍이란?

프로그래밍은 글쓰기이다.어떤 일의 진행순서를 정하는 것이 프로그래밍이다.다른 말로 일하는 절차에 대한 글쓰기다.글로 작성한 '해야 할 일'을 정한 순서대로 수행하는 것을 '실행'이라 한다.모든 실행은 고유한 흐름을 갖는다.프로그램의 목표는 근본적으로 '자동화'에 있다.  절차적 글쓰기조건 → 조건에 대해 분석 → 분석에 대한 절차를 생각  → 절차를 문서로 기술 → 실행식빵 + 나이프 + 버터를 가지고 빵을 만들때 순서식빵 한조각을 접시에 올려 놓는다.버터통의 뚜껑을 연다.손으로 나이프를 잡는다.나이프를 버터통에 넣고 버터를 퍼온다.나이프에 묻은 버터를 식빵의 윗면에 퍼바른다.  프로그램을 잘 작성하고 싶다면?선형자료 정렬 규칙(프로그램)을 '글로' 써본다.자신이 좋아하는 게임을 프로그램으로 작성해본다...

IT 지식/CS 기초

가상 메모리란?

가상 메모리 시스템(1)Virtual ≒ Logical = S/W → 소프트웨어적으로 메모리를 구성 = 가상 메모리가상 메모리의 주소 공간은 페이지(Page)라는 단위로 일정 크기 분할되어 있다.Page 라는 조각 단위를 HDD와 RAM 사이를 왔다갔다 하면서 공간 이동 → PagingPage = 약 4KB Paging(페이징) 예시RAM(8GB) = 10개 프로그램 실행 가능필요에 의해 15개 프로그램을 실행해야 하는 경우HDD 영역의 일부 용량을 가져와서 RAM인것처럼 사용한다.속도는 느려지지만 15개 프로그램이 실행된다.  가상 메모리 시스템(2)운영체제에서 프로세스가 실행되는 경우, 메모리 공간을 할당해준다. = VMS(Virtual Memory Space)가상 메모리를 사용하게 되면 RAM이 부..

IT 지식/CS 기초

컴퓨터의 구성 요소 (H/W, User mode, Kernel mode)

국가와 국민으로 이해하기컴퓨터 = 국가국가는 영토, 정부, 민간 3가지로 구성된다.영토가 있어야 정부가 존재할 수 있으며, 정부가 있어야 국민이 존재할 수 있다. (존립 기반 = 전제 조건)영토 = H/W = CPU+RAM+DISK 등정부,민간 = S/W 정부 = System(OS) → OS의 핵심 Kernel (접근 제어)민간 = Application → 프로그램 실행 → Process (메모리 공간을 개별로 소유)프로세스끼리 서로 침범해서는 안되며, B프로세스가 A프로세스에 침범 시 OS가 접근 제어한다.여러 개 프로세스가 동시에 존재 = 멀티태스킹 환경 (독립성, 원자성 보장)검찰, 경찰 = 디버거 → 다른 프로세스의 메모리를 볼 수 있다. (OS에서 권한 허용)  OS의 핵심 Kernel컴퓨터라는..

Security Engineer
'CS 기초' 태그의 글 목록 (3 Page)