23년 2학기 학교공부 (82) 썸네일형 리스트형 [CN] 네트워크 계층 - control plane 2023학년도 2학기 충남대학교 이영석 교수님의 컴퓨터네트워크 수업 정리자료입니다. 📁 네트워크 계층 데이터 링크 계층에서는 같은 네트워크 상에 있는 컴퓨터끼리 데이터를 전송한다. 같은 네트워크 상의 컴퓨터는 길찾기 알고리즘 상에서는 '인접한 노드'이므로, 즉 인접한 노드 사이의 데이터를 전송할 수 있는 것이다. 인접하지 않은 노드인 '다른 네트워크 혹은 인터넷 상의 컴퓨터' 사이에서 데이터를 전송하는 기능은 네트워크 계층의 역할이다. 네트워크 계층은 송신 호스트에서 수신 호스트로 세그먼트를 전송하는 포워딩(Forwarding) 기능과, 송신 호스트로부터 수신 호스트까지의 노드 간의 길을 찾고 알려주는 라우팅(Routing) 기능을 수행한다. 1. forwarding - 라우터의 input 포트에서 ou.. [CP] Syntax-Directed Definition(SDD) 2023학년도 2학기 충남대학교 조은선 교수님의 컴파일러개론 수업 정리자료입니다. 📁 Semantic Analysis(의미 분석) 이전 처리 컴파일은 어휘분석, 구문분석, 의미분석 순으로 이루어진다. 이때 구문분석의 결과 parsing tree를 얻을 수 있는데, 이렇게 얻은 parsing tree로 바로 의미분석을 진행할 것인지, 몇가지 처리를 한 후 의미분석을 진행할 것인지 선택할 수 있다. 이때 의미 분석 전에 이루어지는 처리과정에서 사용되는 중요한 도구에는 Syntax-Directed Definition/Translation(SDD/SDT)와 Abstract Syntax Tree (AST)가 있다. 📁 Syntax-Directed Definition (SDD) Syntax-Directed Defi.. [ML] 의사결정트리(DT, Decision tree) 2023학년도 2학기 충남대학교 양희철 교수님의 기계학습 수업 정리자료입니다. 📁 의사 결정 트리(DT, Decision tree) 의사결정트리란, 입력 값에 따라 목표 값을 예측할 때 사용하는 트리 모양의 모델을 말한다. 기본적으로 Decision Tree로 데이터를 분류할 때는 위에서 아래로 진행하며, 리프노드에 도착할 때 까지 연속적으로 노드를 방문하여 분류하는 방식이다. 각 노드에서 묻는 질문은 특정 속성과 관련되고, 아래로 향하는 화살표 링크는 해당 속성으로 가능한 값들을 나타낸다. Decision Tree는 학습 단계에서 greedy method를 쓰기 때문에 연산량이 많지 않고, 한번 트리를 생성한 후 데이터를 분류하기 위해서 모델을 거치도록만 하면 되기 때문에 사용이 용이하지만, 성능 면에.. [CN] 라우터 라우터는 길을 찾는 장치. 공유기라고 생각하면됨. 네트워크 카드가 여러개잇고, 그 사이에 전달. 공유기의 카드가 보통 4개가 있고. 무선도있음. 라우터가 노트북컴퓨터랑 똑같은 구조임. 네트워크 카드가 있고, cpu 메모리 등이 있음. high-speed switchin gfabric이 특별한 하드웨어로 버스같은 역할을 하는거임. 컴퓨터의 버스가 라우터 역할을 할 수도 잇음. 이미 스마트폰에서 라우터를 쓰고있음. 테더링. 5G, lte 인터페이스하고 와이파이 인터페이스 사이에 패킷을 전달하는 거임. 그 구조가 이럼. cpu가 ip 헤더를 읽어서 ip주소를 읽어서 전달. 프로세서가 하는 역할이 라우팅. 길찾기 기능임. 최단경로 알고리즘 다익스트라알고리즘이 여기 구현되어있음. 프로세서에. forwarding .. [CP] LR(0) 파싱테이블 📁 LR Parsing : 파서 상태 파서는 파싱테이블을 보고 – 현재 상태, 입력 심벌을 보고 shift 할지 reduce 할지 결정하고 (action) – 파서 상태도 변경시킴 (goto) 📁 LR 파싱 테이블 LR(0)이란, LOOKAHEAD 없이 shift-reduce 형태로 파싱하는 것을 말한다. LR(0)에서 사용되는 파싱 테이블을 만드는 절차는 다음과 같다. 1. LR(0) 아이템과 Closure 등을 이용하여 파서 상태가 될 만한 것들이 무엇인지 정한다. 2. GOTO를 이용하여 각 파서 상태들 간의 상태 전이도(DFA : Deterministic Finite Automata)를 만든다. 3. 위 결과를 파싱 테이블에 담아낸다. 📁 LR(0) 아이템 LR(0) 아이템이란, RHS에 점('... [CP] 구문분석 도구 : Yacc 📁 Yacc Yacc은 Yet Another Compiler Compiler의 약자로, LALR 파서 생성기이다. Lex와 함께 사용되는 유용한 도구이며, Confilxt 발생 시 대처하는 손쉬운 방법을 제공한다. Lex와 함께 AT&T Bell Lab.에서 70년대 유닉스 운영체제 용으로 개발되어, 유닉스 표준으로 채택되었지만 최근에는 GNU Flex/Bison을 더 많이 사용하고 있다. .y 파일 형태는 lex, flex 파일과 동일하며 다음과 같다. 예를 들어 Example.y 라는 파일이 있다고 가정할 때, 내부 형태는 다음과 같다. 📁 LR Conflict 모호한 문법은 파싱 테이블에 shift-reduce 나 reduce-reduce conflict를 야기한다. 이러한 conflict는 우선순.. [CP] Bottom-up 파싱, Reduce와 Shift-Reduce 파싱 📁 Bottom-up으로 구문 분석(Parsing)하기 Bottom-up의 파싱 결과는 우파스로, 우측 유도의 역순이다. terminal 심벌들로부터 시작해서 시작 심벌을 유도하는 방식이며, 생성 규칙의 RHS와 매치되는지 확인하고, 매치되면 LHS로 바꿔치기를 반복하여 진행한다. 예를 들어 아래 문법을 Bottom-up 방식으로 파싱하면 다음과 같다. 📁 LL, LR 1. LL(k) LL이란 입력을 Left-to-right, 왼쪽에서 오른쪽으로 스캔하여, Left-most를 유도하는 것?을 말한다. k개의 심벌을 LOOKAHEAD로 사용한다. 2. LR(k) LR이란 입력을 Left-to-right, 왼쪽에서 오른쪽으로 스캔하여, Right-most를 유도하는 것을 말한다. 마찬가지로 k개의 심벌을 L.. [CP] LL(1) 문법 📁 LL 조건 LL조건이란 LL 파싱을 할 수 있는 조건으로, 즉 문법이 결정적으로 파싱될 수 있는 조건을 말한다. 즉, input만 보고 A -> a와 A -> b 중 어떤 규칙을 따라야하는지 결정할 수 있으려면 만족해야하는 조건이다. FIRST에 공통 원소가 없으므로, 각 순간에 적용할 생성규칙이 유일하게(결정적으로) 정해진다. 또한, 생성규칙이 null을 유도할 수 있으면 FOLLOW에 대해서도 고려해야하므로, FOLLOW(A)와 FIRST(b)는 분리된 집합이어야 한다. 📁 LL(1) 문법 LL(1) 문법이란, 임의의 생성규칙 A -> a | b 에 대해 LL 조건을 만족하는 CFG를 말한다. 이때 괄호안의 숫자는 LookAHead의 수를 말한다. 즉 (1)은 입력 토큰을 하나만 보고 결정한다는 .. 이전 1 ··· 3 4 5 6 7 8 9 ··· 11 다음 목록 더보기