목록전체 글 (109)
박종성
왜 전위, 후위 표기식을 사용할까?컴퓨터 입장에서 괄호가 있으면 연산이 복잡해지기 때문 연산을 할 때 X = A / B * (C + D) + E 라는 공식이 있으면컴퓨터는 괄호를 이해하는 과정이 복잡하기 때문에전위, 후위 표기식으로 변경하여 스택으로 빠르게 문제를 풀 수 있다. 중위 → 전위, 후위 표기식1. 연산 우선순위에 따라 괄호로 묶는다.2. 연산자를 해당 괄호의 앞/뒤로 보낸다.3. 필요없는 괄호를 제거한다. 전위, 후위 → 중위 표기식1. 인접한 피연산자 두 개와 오른쪽의 연산자를 괄호로 묶는다.2. 연산자를 해당 피연산자의 가운데로 이동시킨다.3. 필요없는 괄호를 제거한다. 예) a + e * f - b / d + d 중위 표기식을 전위, 후위 표기식으로 바꾸기전위 표기식: + - +..
SLIPSerial Line Internet Protocol직렬 회선 인터넷 프로토콜 컴퓨터에 내장된 직렬 포트에서 인터넷 등의 TCP/IP 네트워크에 접속하기 위한 프로토콜이다.IP 패킷을 직렬 회선으로 전송할 수 있게 캡슐화 하므로 데이터링크 계층이다.전화선 등 직렬 통신 회선을 통해 IP 패킷을 전송하기 위해 사용되었다.IP 데이터를 단순히 직렬로 흘려보내는 통로 역할만 한다.오류 검출, 인증, 압축 등 부가 기능이 전혀 없다. (매우 단순하고 가벼움)과거 전화선을 통한 일시적 인터넷 접속에 사용됨SLIP는 대부분 점대점 프로토콜(PPP, Point-to-Point Protocol)로 대체되었다. PPPPoint-to-Point Protocol점대점 프로토콜 두 통신 노드 간의 직접적인 연결을 위해..
1. 암호 알고리즘의 개요 암호 알고리즘은 패스워드, 주민번호, 은행계좌와 같은 중요정보를 보호하기 위해 평문을 암호화된 문장으로 만드는 절차 또는 방법을 의미한다. 암호 알고리즘은 해시(Hash)를 사용하는 단방향 암호 방식과,개인키 및 공개키로 분류되는 양방향 암호화 방식이 있다. 암호화 방식 1) 양방향 가. 개인키 (1) Stream 방식 (2) Block 방식 나. 공개키 2) 단방향 가. HASH 2. 개인키 암호화(Private Key Encryption) 기법개인키 암호화 기법은 동일한 키로 데이터를 암호화하고 복호화한다. 데이터베이스 사용자가 평문의 정보 M을 암호화 알고리즘 E와 개인키(Pri..
1. 포인터와 포인터 변수포인터는 주소를 저장하는 변수이며, C언어에서는 주소를 제어할 수 있는 기능을 제공한다.C언어에서 변수의 주소를 저장할 때 사용하는 변수를 포인터 변수라 한다. 포인터 변수를 선언할 때는 자료의 형을 먼저 쓰고 변수명 앞에 간접 연산자 *를 붙인다. (int *a;).간접 연산자: 주소에 저장된 값을 가져옴 (포인터를 통해 간접적으로 변수에 접근한다.) 포인터 변수에 주소를 저장하기 위해 변수의 주소를 알아낼 때는 변수 앞에 번지 연산자 &를 붙인다. (a = &b;).번지 연산자: 변수의 주소를 구함 실행문에서 포인터 변수에 간접 연산자 *를 붙이면 해당 포인터 변수가 가리키는 곳의 값을 말한다. (c = *a;). 포인터 변수는 필요에 의해 동적으로 할당되는 메모리 영역. 즉..
1. UNIX의 개요 및 특징*시분할 시스템(Time Sharing System)을 위해 설계된 대화식 운영체제로, 소스가 공개된 개방형 시스템(Open System)이다.더보기*시분할 시스템(Time Sharing System, TSS)CPU 시간을 여러 사용자나 여러 프로그램이 조금씩 나누어 사용하는 프로그램즉 하나의 컴퓨터를 여러 명의 사용자가 동시에 사용하는 것처럼 느끼게 하는 운영 방식 대부분 C언어로 작성되어 있어 이식성이 높으며 장치, 프로세스 간의 호환성이 높다.➡ 프로그램이 특정 하드웨어 장치에 종속되지 않게 설계되어 프로그램 코드를 거의 수정하지 않아도 됨➡ UNIX에서 작성된 프로그램은 다른 UNIX 시스템에서도 거의 그대로 실행 가능 크기가 작고 이해하기 쉽다.➡ 시스템을 설치..
1. 화이트박스 테스트 정의 ⬜화이트박스 테스트는 *모듈의 원시 코드를 오픈시킨 상태에서 원시 코드의 논리적인 모든 경로를 테스트하여 테스트 케이스를 설계하는 방법이다. 더보기*모듈(Module)이란?모듈화를 통해 분리된 시스템의 각 기능들로, 서브루틴, 서브시스템, 소프트웨어 내의 프로그램, 작업 단위 등과 같은 의미로 사용된다. 화이트박스 테스트는 설계된 절차에 초점을 둔 *구조적 테스트로 *프로시저 설계의 *제어 구조를 사용하여 테스트 케이스를 설계하며, 테스트 과정의 초기에 적용된다.더보기*구조적 테스트프로그램이 실제로 어떻게 구성되어 있는지 코드 구조를 보고 검사하는 테스트 *프로시저 설계프로그램의 실행 절차를 설계한 것예) 로그인 버튼 클릭 -> 아이디 확인 -> 비번 확인 -> 로그인 성공/..
상속(Inheritance)상속은 이미 정의된 상위 클래스(부모 클래스)의 모든 속성과 연산을 하위 클래스(자식 클래스)가 물려받는 것이다.상속을 이용하면 하위 클래스는 상위 클래스의 모든 속성과 연산을 자신의 클래스 내에서 다시 정의하지 않고서도 즉시 자신의 속성으로 사용할 수 있다.하위 클래스는 상위 클래스로부터 상속받은 속성과 연산 외에 새로운 속성과 연산을 첨가하여 사용할 수 있다.상위 클래스의 속성과 연산을 하위 클래스가 사용할 수 있기 때문에 객체와 클래스의 재사용, 즉 소프트웨어의 재사용을 높이는 중요한 개념이다.다중 상속: 한 개의 클래스가 두 개 이상의 상위 클래스로부터 속성과 연산을 상속받는 것이다. 다형성(Polymorphism)다형성은 메시지에 의해 객체(클래스)가 연산을 수행하게..
1. 운영체제 (Operating System)운영체제는 컴퓨터 시스템 *자원들을 효율적으로 관리하며 사용자가 컴퓨터를 편리하게 사용할 수 있도록 환경을 제공하는 시스템 소프트웨어이다.사용자와 하드웨어 간의 인터페이스로서 동작하고다른 응용 프로그램이 *유용한 작업을 할 수 있도록 환경(API, 서비스)을 제공해준다. *예) 파일 입출력, 메모리 관리, 프로세스 관리, 그래픽 출력, 네트워크 통신더보기*자원시스템에서 사용할 수 있는 CPU, 주기억장치, 보조기억장치, 프린터, 파일 및 정보 더보기*유틸리티사용자가 컴퓨터를 쉽게 관리하고 성능을 최적화할 수 있도록 돕는 보조 프로그램. 2. 운영체제의 목적처리 능력 향상, 사용 가능도 향상, 신뢰도 향상, 반환 시간 단축 등이 있으며 각각 운영체제 성능..
1. 진법 변환숫자\진수28 10 16000001111121022231133341004445101555611066671117778100010889100111991010101210A1110111311B1211001412C1311011513D1411101614E1511111715F1610000201610 진법이란?진법은 자리값이 커지는 기준(기수, base)이 달라지는 것.예) 10진수 -> 자릿값이 10씩 커짐 (1, 10, 100, ... 1/10, 1/100 ... )2진수 -> 자릿값이 2씩 커짐 (1, 2, 4, ... 1/2, 1/4 ... ) 1) 2진법 ➡ 8, 10, 16진법 (1) 2진수 ➡ 8진수 변환8진수는 2³ 이므로 이진수 세자리를 이용한다.그러므로 2진수 값을 오른쪽에서 3개씩 ..
스케줄링의 정의는 아래 글을 참조해주세요. [OS] 스케줄링1. 스케줄링이란? 🕒여러 프로세스가 생성되어 실행될 때 한정된 시스템 자원을 프로세스에게 적절히 할당하는 작업을 의미한다.프로세스는 프로그램이 실제로 동작하는 상태이며 실행되기 위angidgidtn.tistory.com ❓ 궁금한 점 🧐더보기Q1.선점의 정의는 '남보다 앞서서 차지함.' 이라고 나와있는데,왜 정의와는 반대로 비선점 스케줄링은 순서를 뺏을 수 없고선점 스케줄링은 순서를 뺏을 수 있을까? A1. 주체가 뺏으려고 하는 운영체제(OS)이기 때문이다.예를들어 비선점 스케줄링인 경우 운영체제가 실행중인 프로세스를 강제로 중단할 수 없기 때문에 기존 프로세스의 스케줄링 순서를 변경할 수 없다.선점 스케줄링인 경우 운영체제가 실행중인 프로..