전체 글
-
논리 게이트 - AND / OR / XOR디지털 공학 Digital Fundamental 2020. 3. 30. 11:55
논리 게이트 (Logic gates) - 버퍼 (buffer) - 인버터 (inverter) - AND - NAND - OR - NOR - XOR - XNOR 버퍼 (buffer) - 출력은 입력을 그대로 전달 인터버(Inverter) - 입력을 반전하여 출력 - 인버터의 타이밍 다이어그램 - 인버터 사용 예 2진수의 '1의 보수' AND gate (논리곱) - 두 수의 입력이 1일 경우에만 출력이 1 * operand가 n개이면 2^n개의 가능한 조합수 : A,B 두개의 operand이므로 4개의 조합수가 나옴. - AND gate 타이밍 다이어그램 - AND gate 사용 예 시동을 켰다 - A 부분은 '1' / 안전벨트 미착용 - B부분은 '0' / 시동 켜고 30초 동안 HIGH - C부분 (1)..
-
수 체계 - 2진수(Unsigned,signed) 10진수 16진수디지털 공학 Digital Fundamental 2020. 3. 30. 10:45
수 체계 - 2진수(Unsigned,signed) 10진수 16진수 - 10진수 - 2진수 - 2진수의 보수 - 2의 보수를 10진수로 변환 - Unsigned 와 signed의 표현 범위 - 오버플로우 - 16진수 10진수 (Decimal) - 10진수에서 사용하는 수(digit): 0~9 - 가중치(weight)는 10 ...10^2, 10^1, 10^0 . 10^-1, 10^-2 ... 2진수 (Binary) - 2진수에서 사용하는 수(digit): 0, 1 - 가중치(weight)는 2 2^n-1 , ... , 2^2, 2^1, 2^0 . 2^-1, 2^-2 ... 2^-n 2진수의 보수 - 1의 보수 2진수의 1의 보수(complement)는 1을 0으로, 0을 1로 변경한다. 1011 -> 0..
-
운영체제 역사운영체제 Operating System/기초 핵심 개념 2020. 3. 29. 21:51
1.2 운영체제 역사 - 하드웨어 발전 -> 운영체제 기술 발전 * Batch processing system (일괄처리시스템) - card reader > memory > processing > line printer '컴파일러, 링크, 로딩' 할 수 있는 메모리를 만들어 main memory에 상주시켰다. - 최초의 OS * Multiprogramming system (다중프로그래밍 시스템) - 컴퓨터는 비싼 자원이다. - 빠른 CPU, 느린 i/o 때문에 cpu가 유휴상태(idle)가 된다. -> CPU 자원 낭비 - CPU idle 시간에 다른 task, job을 실행시키도록 하였다. -> 메모리에 여러 개의 job : CPU scheduling, 메모리 관리, 보호 필요 CPU schedulin..
-
파이썬 프로그래밍의 기초 - 자료형프로그래밍 언어/파이썬 python 2020. 3. 29. 19:41
숫자형 a = 2 #정수 b = 3.2 #실수 숫자형을 활용하기 위한 연산자 사칙연산 ( +, -, *, / ) x의 y제곱을 나타내는 ** 연산자 >> a = 2 >> b = 3 >> a ** b 8 나눗셈 후 나머지를 반환하는 % 연산자 >>7 % 3 1 >> 3 % 7 3 나눗셈 후 몫을 반환하는 // 연산자 >> 7 // 4 1 >> 7 / 4 1.75 문자열 >> a = "Python" >> a "python" 문자열 연산하기 문자열 더하기 ( + ) >> a = "python" >> b =" love" >> a + b "python love" 문자열 곱하기 ( * ) >> a = "python" >> a * 2 "pythonpython" 문자열 길이 구하기 ( len ( ) ) >> a = "..
-
운영체제의 정의운영체제 Operating System/기초 핵심 개념 2020. 3. 28. 12:05
1.1 운영체제의 정의 * 운영체제: Operating System * 운영체제가 없는 컴퓨터? - 컴퓨터: 프로세서(CPU)와 메모리(Memory) - 프로그램 실행, 여러 개의 프로그램을 동시에 실행? -> Hard Disk에 있는 파일(program)을 main memory로 올려야 한다. 또한, OS가 누구 먼저 실행할 것인지도 결정. => OS가 없다면, memory안의 내용/값 자기마음대로 실행할 것이다. 그리고 CPU가 program을 실행해도 제대로 실행 및 제어가 불가능 하다. * 운영체제란? - 컴퓨터 하드웨어를 잘 관리하여 성능을 높이고(Performance) 사용자에게 편의성을 제공(Convenience)하는 것이다. - "컴퓨터 하드웨어를 관리하는 프로그램" : Control pr..
-
컴퓨터 시스템의 개요 - 인터럽트운영체제 Operating System/운영체제 내부구조 및 설계원리 제8판 2020. 3. 28. 11:15
1.4 인터럽트 인터럽트는 기본적으로 CPU의 처리율을 향상하기 위해 제공된다. ex. 대부분의 입출력 장치들은 처리기에 비해 훨씬 느리다. 그래서 매번 입출력 장치 연산 동안, CPU는 수행을 일시 중지한다. 이 상태를 유휴상태(idle)이라고 한다. 이런 유휴시간이 많아질수록 CPU가 매우 큰 낭비이다. 인터럽트를 이용할 경우, 입출력 연산이 진행되는 동안 처리기는 다른 명령어를 수행시킬 수 있다. 즉, 입출력 작업은 사용자 프로그램 내의 명령어 수행(연산)과 동시에 일어난다. 사용자 프로그램에서 보면, 인터럽트는 정상적인 프로그램의 수행을 중지시키는 것이며, 인터럽트 처리가 완료되면 원래 프로그램의 수행이 재개된다. 사용자 프로그램은 인터럽트 처리를 위한 어떠한 코드도 포함할 필요가 없다. 사용자 ..
-
백준 1065 [Python 파이썬 /Java 자바]알고리즘 Algorithms/백준 BaekJoon 알고리즘 2020. 3. 27. 20:21
한 수 문제. 어떤 양의 정수 X의 각 자리가 등차수열을 이룬다면, 그 수를 한수라고 한다. 등차수열은 연속된 두 개의 수의 차이가 일정한 수열을 말한다. N이 주어졌을 때, 1보다 크거나 같고, N보다 작거나 같은 한수의 개수를 출력하는 프로그램을 작성하시오. 입력. 첫째 줄에 1,000보다 작거나 같은 자연수 N이 주어진다. 출력. 첫째 줄에 1보다 크거나 같고, N보다 작거나 같은 한수의 개수를 출력한다. 풀이. [Python] [Java]
-
백준 4344 [Python 파이썬 /Java 자바]알고리즘 Algorithms/백준 BaekJoon 알고리즘 2020. 3. 27. 20:11
평균은 넘겠지 문제. 대학생 새내기들의 90%는 자신이 반에서 평균은 넘는다고 생각한다. 당신은 그들에게 슬픈 진실을 알려줘야 한다. 입력. 첫째 줄에는 테스트 케이스의 개수 C가 주어진다. 둘째 줄부터 각 테스트 케이스마다 학생의 수 N(1 ≤ N ≤ 1000, N은 정수)이 첫 수로 주어지고, 이어서 N명의 점수가 주어진다. 점수는 0보다 크거나 같고, 100보다 작거나 같은 정수이다. 출력. 각 케이스마다 한 줄씩 평균을 넘는 학생들의 비율을 반올림하여 소수점 셋째 자리까지 출력한다. 풀이. [Python] [Java]