이 글은 혼자 공부하는 컴퓨터 구조 + 운영체제 (저자 : 강민철)의 책과 유튜브 영상을 참고하여 개인적으로 정리하는 글임을 알립니다. CPU는 명령어를 처리하는 과정에는 정해진 흐름이 있고, CPU는 그 흐름을 반복하여 명령어들을 처리해 나간다. 명령어를 정형화된 흐름으로 처리하는 것을 명령어 사이클이라고 한다. CPU는 명령어 사이클을 통해 작업을 처리해 나가는데, 이 흐름을 끊어지게 하는 상황이 발생하는데 이것을 인터럽트라고 한다. 명령어 사이클 CPU가 메모리에 저장된 명령어 하나를 실행한다고 하면, 가장 먼저 해야 할 일은 명령어를 CPU로 가져와야 한다. 명령어를 가져왔으면 명령어를 실행해야 한다. 이것을 실행 사이클이라고 한다. 인출 사이클 : 메모리에 있는 명령어를 가져오는 단계 실행 사이..
문제설명 소스코드 #include using namespace std; int main() { int arr[3]; for (int i = 0; i > arr[i]; } int tmp; for (int i = 0; i arr[j]) { tmp = arr[j]; arr[j] = arr[i]; arr[i] = tmp; } } } for (int i = 0; i < 3; ++i) { cout
문제설명 소스코드 #include #include using namespace std; int main() { string input; while (true) { int count = 0; getline(cin, input); for (int i = 0; i < input.length(); ++i) { if (input[i] == 'a' || input[i] == 'e' || input[i] == 'i' || input[i] == 'o' || input[i] == 'u' || input[i] == 'A' || input[i] == 'E' || input[i] == 'I' || input[i] == 'O' || input[i] == 'U') ++count; else if (input[i] == '#') r..
문제설명 소스코드 #include using namespace std; int main() { int input; string pw; cin >> input; for (int i = 0; i > pw; if (pw.length() >= 6 && pw.length()
문제설명 소스코드 #include using namespace std; int main() { int input; cin >> input; for (int i = 1; i
문제설명 소스코드 #include using namespace std; int main() { int input; cin >> input; if (input == 0) { cout
문제설명 소스코드 #include using namespace std; int main() { string input; int sum = 0; cin >> input; for (int i = 0; i < input.length(); ++i) { if (input[i] == 'A' || input[i] == 'B' || input[i] == 'C') sum += 3; else if (input[i] == 'D' || input[i] == 'E' || input[i] == 'F') sum += 4; else if (input[i] == 'G' || input[i] == 'H' || input[i] == 'I') sum += 5; else if (input[i] == 'J' || input[i] == 'K' ..
문제설명 소스코드 #include #include using namespace std; int main() { string a; string b; cin >> a >> b; for (int i = 0; i d ? cout