Computer Science
[Combinational Logic Circuit] 디코더(Decoder)
해당 강의노트는 S. Brown and Z. Vranesic, McGraw-Hill의 [Fundamentals of Digital Logic with VHDL Design, 3rd Edition] 책을 기반으로 작성되었습니다 Decoder - Decoder - An n-to-$2^n$ binary decoder - Tri-state Buffer - Read-only Memory, ROM Decoder 디코더(Decoder)란? 디코더는 다중 입력에 다중 출력 조합 논리 회로(combinational logic circuit)로, n-bit 데이터 입력을 코드화된 $2^n$개의 출력으로 변환한다. (인코더에 의해 숨겨진 정보를 해독함) 디코더 응용 사례 - 디코더의 역할은 입력 이진수를 하나의 출력으로 연..
[Combinational Logic Circuit] 멀티플렉서(Multiplexer, MUX)
해당 강의노트는 S. Brown and Z. Vranesic, McGraw-Hill의 [Fundamentals of Digital Logic with VHDL Design, 3rd Edition] 책을 기반으로 작성되었습니다 Multiplexers - Multiplexer Circuit - Synthesis of a logic function using MUXs - Shannon's Expansion Theorem Multiplexer Circuit 멀티플렉서(Multiplexer, MUX)란? 복수 개의 입력 신호로부터 특정 조건에 의해 입력 신호를 한 개만 선택할 때 사용하는 것 디멀티플랙서(Demultiplexer, DeMUX)란? 멀티플렉서와 반대의 목적에 사용 됨 멀티플랙서 회로 - -to- M..
[파이썬 클린코드] Ch04.SOLID 원칙
해당 게시글은 책의 4장을 참고하여 작성되었습니다 Chapter 04. SOLID 원칙 SOLID란? 이해하기 쉽고 유연하며 유지 보수가 쉬운 SW 개발을 위한 다섯가지 SW 설계 원칙 약어원칙한글 명칭 SRP Single Responsibility Principle 단일 책임 원칙 OCP Open-Closed Principle 개방-폐쇄 원칙 LSP Liskov Substitution Principle 리스코프 치환 원칙 ISP Interface Segregation Principle 인터페이스 분리 원칙 DIP Dependency Inversion Principle 의존 역전 원칙 4장의 목표 SW 디자인에서 SOLID 원칙을 익힌다 SRP을 따르는 컴포넌트를 디자인한다 OCP을 통해 유지보수성을 뛰..
[Programming Language Pragmatics] 07 Data Types(1)
[07 Data Types(1)] 7.1~7.2 Table of Contents 7.1 Type Systems - 7.1.1 Type Checking - 7.1.2 Polymorphism - 7.1.3 The Meaning of “Type” - 7.1.4 Classification of Types - 7.1.5 Orthogonality 7.2 Type Checking - 7.2.1 Type Equivalence - 7.2.2 Type Compatibility - 7.2.3 Type Inference - 7.2.4 The ML Type System 7.3 Parametric Polymorphism 7.4 Equality Testing and Assignment 7.1 Type Systems 대부분의 프로그..
[유닉스 시스템 프로그래밍] Ch11. 소켓 프로그래밍 기초
[유닉스 시스템 프로그래밍] Ch10. 시스템V의 프로세스간 통신 학습목표 - TCP/IP 프로토콜의 기본 개념을 이해한다. - IP 주소와 포트번호의 개념을 이해한다. - 소켓 관련 구조체와 함수를 이해한다. - 소켓을 이용한 통신 프로그램을 작성할 수 있다. 목차 1. TCP/IP 개요 2. IP 주소와 호스트명 3. 포트번호 4. 소켓 프로그래밍 기초 5. 소켓 인터페이스 함수 1. TCP/IP 개요 TCP/IP 란? - 인터넷의 표준 프로토콜 - 5계층(4계층)으로 구성 TCP와 UDP의 차이 *참고 2. IP 주소와 호스트명 IP주소와 호스트명 IP 주소 : 인터넷을 이용할 때 사용하는 주소로 점(.)으로 구분된 32비트 숫자 호스트 명 : . 시스템에 부여된 이름 호스트명(도메인 명)과 IP주..
[Programming Language Pragmatics] 06 Control Flow(3)
[06 Control Flow(3)] 6.5~6.7 Table of Contents 6.5. Iteration - 6.5.1 Enumeration-Controlled Loops - 6.5.2 Combination Loops - 6.5.3 Iterators - 6.5.4 Generators in Icon(패스) - 6.5.5 Logically Controlled Loops 6.6 Recursion - 6.6.1 Iteration and Recursion - 6.6.2 Applicative- and Normal-Order Evaluation 6.7 Nondeterminancy 6.5. Iteration Iteration과 recursion 두 메카니즘은 비슷한 연산을 반복적으로 컴퓨터에게 수행시키는 것 절차..
Pthread 개념
목표 - Thread를 이해한다 - Pthread를 이용하여 기본적인 thread programming을 할 수 있다. 목차 1. Thread 2. Pthread 3. Pthread create / exit 4. Pthread join / detach 5. Thread에서의 변수 공유 6. 상호 배제 1. Thread Thread란? 경량 프로세스(ligthweight process: LWP) - 일반 프로세스는 생성 시 자신만의 메모리 영역을 할당 받는다 : PCB, code, static, heap, stack 등 - Thread : PCB와 스택만 별도로 할당 받고 나머지는 부모 프로세스와 공유 - 생성과 전환(context switch)시 프로세스보다 오버헤드가 적다 대부분 운영체제가 여러 쓰레드..
[Programming Language Pragmatics] 06 Control Flow(2)
[06 Control Flow(2)] 6.1.3~6.3 Table of Contents 6.1. Expression Evaluation - 6.1.3 Initialization - 6.1.4 Ordering within Expressions - 6.1.5 Short-Circuit Evaluation 6.2 Structured and Unstructured Flow - 6.2.1 Structured Alternatives to goto - 6.2.2 Continuations(수업에서 다루지 않음) 6.3 Sequencing 6.4 Selection - 6.4.1 Short-Circuited Conditions - 6.4.2 Case/Switch Statements 6.1.3 Initialization - ..