본문 바로가기

프로그래밍언어11

[Programming Language] 3. 자료형 (3) 직전글 2023.07.12 - [Language] - [Programming Language] 3. 자료형 (2) ● 레코드 개개의 원소들이 이름으로 식별되고 그 구조의 시작 부분으로부터 오프셋을 통해 접근되는 데이터 원소들의 집단체. 대부분의 언어에서 필드(= 레코드의 원소) 참조를 위해 도트 표기법을 사용함. (레코드이름.필드이름) - C에서 레코드 struct(구조체)로 지원. - Python에서 레코드 딕셔너리 or 해시로 구현 가능, 레코드가 배열의 원소가 될 수 있음. - Java에서 레코드 클래스로 정의 가능, 클래스 멤버는 레코드 필드로서 역할 수행. ● 튜플 레코드와 유사한 데이터 타입이지만, 원소들이 명명되지 않음. - Python에서 튜플 변경불가 튜플 타입을 제공함. 변경해야 하는 .. 2023. 7. 14.
[Programming Language] 3. 자료형 (2) 직전글 2023.07.11 - [Language] - [Programming Language] 3. 자료형 (1) ● 배열 동질적인(동일한 타입을 가진) 데이터 원소들의 집합체 개개의 원소는 집단체(Aggregate)에서 첫 번째 원소와의 상대적인 위치(오프셋)에 의해서 식별됨. (개개의 배열 원소들에 대한 참조는 첨자(Subscript)나 색인(Index) 식을 이용하여 명세됨.) ※ 오프셋(Offset) vs. 색인(Index) 오프셋은 메모리상에서 처음 위치와 떨어진 거리, 색인은 배열 상의 순서를 의미함. - 언어별 주의할 점 ㄴ C, Java, C++, Ada, C# 등 배열의 모든 원소들이 동일한 타입이어야 함. 포인터나 참조들은 단일 타입을 가리키거나 참조하도록 제한됨. 따라서, 가리켜지거나.. 2023. 7. 12.
[Programming Language] 3. 자료형 (1) 직전글 2023.07.09 - [Language] - [Programming Language] 2. 변수, 바인딩, 영역 ● 서론 - 자료형(Data Type) : 데이터 값들의 모임과 그들 값들에 대한 미리 정의된 연산들의 집합 - 사용자-정의 타입(User-defined Type) : 사용자가 정의한 자료형 (C언어 typedef) 타입에 대한 의미있는 이름을 사용해 판독성이 올라가며, 프로그램 수정에 도움이 됨.(타입 선언문만 변경해서 타입을 변경 가능하기 때문) - 추상 자료형(Abstract Data Type) : 사용자 정의 타입에서 더 나아간 개념 (Class) - 객체 : 사용자-정의 추상 자료형의 인스턴스 ● 기본 자료형 다른 자료형을 이용하여 정의되지 않은 데이터 타입. 거의 모든 프로.. 2023. 7. 11.
[Programming Language] 2. 변수, 바인딩, 영역 직전글 2023.07.07 - [Language] - [Programming Language] 1. 서론 ● 변수 (Variable) 컴퓨터 메모리 셀이나 셀들의 모임에 대한 추상화. 흔히 메모리 위치에 대한 이름으로 생각하지만, 변수는 이름 외에도 몇 가지 속성을 더 가짐. (총 6개의 속성을 다룰 예정) 1. 이름 변수의 가장 기본적인 속성으로, 어떤 개체를 식별하기 위해 사용되는 문자열임. 식별자(Identifier)라는 용어와 혼용되어 사용됨. ㄴ 형식 길이 제한 : 언어 마다 제한하는 경우도 있고 안하는 경우도 있음. 표기법 : 낙타 표기법(myVariable), 스네이크 표기법(my_variable) 등 다양한 방법이 존재함. 대소문자 구분 : 많은 언어에서 대소문자를 구분함.(== 다르게 인.. 2023. 7. 9.
[Programming Language] 1. 서론 ● 들어가기 전 블로거 한마디 과목은 프로그래밍 언어 설계 및 구현시 고려되어야 하는 사항과 그에 따른 언어별 특징 등을 배우는 과목입니다. 각종 언어들에 대한 예제 코드가 나오지만, 그에 대한 문법적인 설명은 따로 제공하지 않으므로, 기본적인 문법, 특히 C, Python, Java 세 언어의 기본문법은 알고 보시는게 좋습니다. ● 컴퓨터 구조가 언어 설계에 미친 영향 현대의 컴퓨터 구조는 모두 폰 노이만 구조에 기반함. - 폰 노이만 구조 데이터와 프로그램이 모두 동일한 기억 장소에 저장됨 명령어를 실행하는 CPU는 기억 장소로부터 떨어져 있음. 명령어와 데이터는 CPU에 전달되어야 하고, 연산 결과는 다시 기억 장소로 전달되어야 함. (인출-실행 사이클, 해당 과정에서 Program Counter,.. 2023. 7. 7.