[기초-데이터형] 정수 한 개 입력받아 그대로 출력하기2 && 운영체제1
운영체제 또는 OS(Operating System)은 하드웨어 관리 및 응용 소프트웨어를 실행시키는 시스템 소프트웨어이다. (응용 소프트웨어는 운영체제에서 실행가능한 모든 소프트웨어이다. 크롬, 마이크로소프트 오피스, 메모장 등등이 여기에 속한다. 반면 시스템 소프트웨어는 응용 소프트웨어를 실행하기 위한 플랫폼을 제공하고 컴퓨터 하드웨어를 동작, 접근할 수 있도록 설계된 소프트웨어이다.) 또, 실행되는 응용 프로그램들이 메모리와 CPU, 키보드나 모니터처럼 입출력 장치 등의 자원들을 사용 할 수 있도록 만들어 주고, 이를 간단히 하여 파일 시스템 등의 서비스를 제공한다. 운영체제가 Windows,macOS,Linux와 기껏해야 수십개 있겠지 생각하면 큰 오산이며 실제로 운영체제는 하늘에 별만큼 많다.(광공해 현상의 영향을 받지 않는 곳이 기준이다.) 운영체제는 휴대폰, 게임기 등 에서 부터 슈퍼 컴퓨터, 웹서버에 이르기까지 컴퓨터를 포함하는 거의 모든 장치에서 볼 수 있다. 엄밀히 말하면 소형 제품은 펌웨어라고 하기도 한다. 공급되는 시장에 따라 보통 일반 사용자용, 기업용, 서버용, 임베디드의 4개 시장으로 나뉘어져 있다. 일반 사용자와 기업용 시장은 Windows가 꽉잡고 있는게 현실이라, macOS도 낄라고 노력중이며 서버용으론 Linux와 Unix가 많이 사용된다. macOS의 서버버전도 있긴 하지만, 여러 이유로 점유율이 거의 0%대... 심심하면 맥 미니를 웹서버로 사용하긴 한다.
전문적으로 운영 체제를 다루는 책은 Operating System Concepts라고 공룡책에 나온다. (왜 공룡이 있는지 잘 모르겠다...)
운영체제의 중요한 목적은 이를테면 다음과 같다.
● 사용자에게 컴퓨터 프로그램을 쉽고 효율적이게 실행 할 수 있는 환경을 제공
● 하드웨어 및 소프트웨어 자원을 여러 사용자들에게 효율적으로 분배, 관리, 보호
● 사용자 프로그램의 오류나 잘못된 자원 사용을 감시하는것과 입출력 장치등의 자원에 대한 연산과 과제어를 관리한다.
정수 한 개를 입력받아 그대로 출력해보자.
(단, 입력되는 정수의 범위는 0 ~ 4,294,967,295 이다.)
정수 한 개가 입력된다.
(단, 입력되는 정수의 범위는 0 ~ 4294967295 이다.)
입력된 정수가 그대로 출력된다.
2147483648
2147483648
-2147483648 ~ +2147483647 범위의 정수를 저장하고 처리하기 위해서는 int 데이터형을 사용해 변수를 선언하면된다.
(int 로 선언하고 %d나 %i 로 입력 받거나 출력하면 된다.)
하지만 이 범위를 넘어가는 정수를 저장하기 위해서는 보다 큰 범위를 저장할 수 있는 다른 데이터형을 사용해야 정상적으로 저장시킬 수 있다.
unsigned int 데이터형을 사용하면 0 ~ 4294967295 범위의 정수를 저장할 수 있다. 이것보다 더 큰 정수 타입은 다음번에 보도록 하자!
[예시]
unsigned int n;
scanf("%u", &n);
printf("%u", n);
Python은 그런거 없이 그냥 int면 상상가능한 정수가 포함된다.