티스토리 뷰
keyword : 특정한 context에서만 특별한 word
reserved word : user-defined name으로 사용될 수 없는 special word
Variable을 나타내는 주요 특징 6가지 : name, address, value, type, lifetime, scope
Address : variable이 연관된 주소
- 두개의 variable name이 같은 메모리 위치를 가리키는 경우, aliase라고 함
Type : variable의 값의 range와 그 variable에 적용되는 set of operation을 결정한다.
Value : variable이 연관된 위치의 값
* binding : attribute와 entity, 또는 operation과 symbol의 association
* static binding : run time 이전에 바인딩이 일어나고 프로그램 실행 중간에 변경되지 않을 때
* dynamic binding : run time 중간에 바인딩이 일어나거나 프로그램 실행 중에 변경될 수 있을 때
Type Binding
- static : explicit의 경우에는 변수의 type을 선언하는 statement를 이용한다.
implicit의 경우에는 변수가 처음 사용시 디폴트하게 타입이 결정된다.
- dynamic : assignment 마다 type이 결정된다.
Storage Binding
- allocation : available cell의 pool에서 cell을 얻는 것
- deallocation : pool에 cell을 반납하는것
Lifetime : variable이 특정 memory cell에 bound되는 시간
- Lifetime의 카테고리
1. static : 실행 시작 전에 memory cell로 bound되고 실행하는 동안 같은 memory cell로 bound된 것이 유지됨
2. stack-dynamic : 변수가 선언될 때 storage binding됨(ex>local variable)
3. explicit heap-dynamic : 실행 중간에 프로그래머에 의해서 할당되고 해제됨.
4. implicit heap-dynamic : assignment에 의해 할당되고 해제됨
Type Checking : operator의 operand들이 compatible 타입인지 결정하는 과정
Compatible type : operand 들이 둘다 legal하거나 explicit하게 conversion되는 것. explicit conversion을 coercion이라 한다.
Strongly typed Language : type error가 항상 detect될때!
Type Compatibility
- by name : 두 변수가 same declaration안에 있거나 혹은 같은 타입 이름을 이용하여 선언된 경우
- by structure : 내부 구조가 동일할 경우
Scope : statement가 visible한 범위
- static : program text기반. spatial한 메커니즘이 적용된 것
- dynamic : calling sequence 기반.
Referencing Environment : 스테이트먼트가 visible한 모든 statement의 콜렉션
Variable Initialization : 스토리지에 바운드 될때 값이 할당되는 것.
reserved word : user-defined name으로 사용될 수 없는 special word
Variable을 나타내는 주요 특징 6가지 : name, address, value, type, lifetime, scope
Address : variable이 연관된 주소
- 두개의 variable name이 같은 메모리 위치를 가리키는 경우, aliase라고 함
Type : variable의 값의 range와 그 variable에 적용되는 set of operation을 결정한다.
Value : variable이 연관된 위치의 값
* binding : attribute와 entity, 또는 operation과 symbol의 association
* static binding : run time 이전에 바인딩이 일어나고 프로그램 실행 중간에 변경되지 않을 때
* dynamic binding : run time 중간에 바인딩이 일어나거나 프로그램 실행 중에 변경될 수 있을 때
Type Binding
- static : explicit의 경우에는 변수의 type을 선언하는 statement를 이용한다.
implicit의 경우에는 변수가 처음 사용시 디폴트하게 타입이 결정된다.
- dynamic : assignment 마다 type이 결정된다.
Storage Binding
- allocation : available cell의 pool에서 cell을 얻는 것
- deallocation : pool에 cell을 반납하는것
Lifetime : variable이 특정 memory cell에 bound되는 시간
- Lifetime의 카테고리
1. static : 실행 시작 전에 memory cell로 bound되고 실행하는 동안 같은 memory cell로 bound된 것이 유지됨
2. stack-dynamic : 변수가 선언될 때 storage binding됨(ex>local variable)
3. explicit heap-dynamic : 실행 중간에 프로그래머에 의해서 할당되고 해제됨.
4. implicit heap-dynamic : assignment에 의해 할당되고 해제됨
Type Checking : operator의 operand들이 compatible 타입인지 결정하는 과정
Compatible type : operand 들이 둘다 legal하거나 explicit하게 conversion되는 것. explicit conversion을 coercion이라 한다.
Strongly typed Language : type error가 항상 detect될때!
Type Compatibility
- by name : 두 변수가 same declaration안에 있거나 혹은 같은 타입 이름을 이용하여 선언된 경우
- by structure : 내부 구조가 동일할 경우
Scope : statement가 visible한 범위
- static : program text기반. spatial한 메커니즘이 적용된 것
- dynamic : calling sequence 기반.
Referencing Environment : 스테이트먼트가 visible한 모든 statement의 콜렉션
Variable Initialization : 스토리지에 바운드 될때 값이 할당되는 것.
'Computer Science' 카테고리의 다른 글
[Compiler] JFlex & JCup 흐름 (0) | 2011.05.28 |
---|---|
PL Ch 5. Data Type (0) | 2011.05.16 |
PL Ch 3. 정리 (0) | 2011.05.16 |
[Algorithms] KMP 알고리즘 (0) | 2011.04.30 |
운영체제 동기화 부분(2) (0) | 2011.04.01 |
댓글
공지사항
최근에 올라온 글
최근에 달린 댓글
- Total
- Today
- Yesterday
링크
TAG
- 카타르
- reversing
- 카타르 음주
- android
- Discrete Mathematics
- 자바
- operating systems
- 안드로이드
- Reverse Engineering
- 리눅스
- 통계학습
- 이산수학
- 데이터 사이언스
- 대학원
- Algorithms
- 알고리즘
- 리버싱
- 자료구조
- 머신러닝
- java
- 개발
- 기계학습
- 운영체제
- 데이터 과학
- 리버스엔지니어링
- Data Structure
- linux
- Data Science
- statistical learning
- Machine Learning
일 | 월 | 화 | 수 | 목 | 금 | 토 |
---|---|---|---|---|---|---|
1 | 2 | 3 | 4 | 5 | 6 | 7 |
8 | 9 | 10 | 11 | 12 | 13 | 14 |
15 | 16 | 17 | 18 | 19 | 20 | 21 |
22 | 23 | 24 | 25 | 26 | 27 | 28 |
29 | 30 | 31 |
글 보관함