every/study 10

컴퓨터 그래픽스 개념정리(3)

윈도우 생성 과정 메인 이벤트 루프  MSDN - WinMain()모든 Windows 프로그램에는 WinMain 또는 wWinMain이라는 진입점 함수가 포함되어 있음hInstance: 프로그램의 인스턴스 핸들      운영체제는 이 값을 사용하여 실행파일 또는 exe가 메모리에 로드될 때 이를 식별hPrevInstance: 앞에 실행된 현재 프로그램의 인스턴스 핸들 16비트 Windows에서 사용되었지만 지금은 항상 0lpCmdLine: pCmdLine은 명령쥴 인수를 유니코드 문자열로 포함함nCmdShow: 기본 애플리케이션 창을 최소화할지, 최대화할지, 또는 정상적으로 표시할지를 나타내는 플래그CreateWindow()확장 창 스타일을 사용하여 겹치는, 팝업 또는 자식 창을 만듦아닌 경우 이 함수는..

every/study 2024.11.24

컴퓨터 그래픽스 개념정리(2)

03 prac윈도우 생성 과정 메인 이벤트 루프 MSDN - WinMain()모든 Windows 프로그램에는 WinMain 또는 wWinMain이라는 진입점 함수가 포함되어 있음hInstance: 프로그램의 인스턴스 핸들      운영체제는 이 값을 사용하여 실행파일 또는 exe가 메모리에 로드될 때 이를 식별hPrevInstance: 앞에 실행된 현재 프로그램의 인스턴스 핸들 16비트 Windows에서 사용되었지만 지금은 항상 0lpCmdLine: pCmdLine은 명령쥴 인수를 유니코드 문자열로 포함함nCmdShow: 기본 애플리케이션 창을 최소화할지, 최대화할지, 또는 정상적으로 표시할지를 나타내는 플래그 CreateWindow()확장 창 스타일을 사용하여 겹치는, 팝업 또는 자식 창을 만듦아닌 경..

every/study 2024.11.20

컴퓨터 그래픽스 소개(기본 개념)

컴퓨터 그래픽스 (Computer Graphics) : 컴퓨터를 이용하여 영상을 제작하는 기술 이미징: 2차원 이미지 표현  ex) 와핑, 경계선 검출, 모핑 모델링: 3차원 오브젝트 표현            간단한 모양의 물체들에 boolean연산(합집합, 교집합, 차집합)을 계층적으로 표현              ex) 폴리곤, 메쉬 분할,  렌더링: 3차원 모델들로부터 2차원 이미지 생성            빛의 움직임을 시뮬레이션 하여 이미지 생성                ex)Photorealistic Rendering, Non-Photorealistic RenderingReal-time Rendering일반적으로 3D 렌더링을 의미이미지가 표시되는 프레임 속도 그래픽 프로세스 : Image ..

every/study 2024.11.12

변수, 바인딩, 식 제어문(3)

배정 연산에 관한 사항이형(이일리어스)두 개 이상의 변수가 동일한 기억 장소를 참조할 때 이들 변수 사이의 관계를 말한다.X는 Y의 이형(aliased): 엑드 성립 가능 (X는 Y의 이형)Fortran의 EQUIVALENCE, Cobol의 REDEFINES, C의 union (기억장소 공유)이형이 공유가 프로그램의 실질적 오류를 발생시킴, 최적화에 방해Euclid: 주요 설계 목적은 aliasing 제거 노력, 완벽하지 못함C: 포인터 변수를 사용한 alias 발생alias가 존재하는 경우에 함수 호출 시 call by reference의 경우ex) 배열의 시작 주소를 넘겨 처리하는 것alias를 사용하여 호출을 보는 것Argument 평가 순서배정 연산 순서a[i] = b = 1; 일 때b = 1, ..

every/study 2024.11.11

변수, 바인딩, 식 제어문(2)

주요 언어에서의 식별자 바인딩 시간번역시간(정적) 바인딩(Static binding)링케이지 시간(Linkage edit 시간)적재 시간(load time)실행시간(동적) 바인딩(Dynamic binding)1) Fortran, Algol, PL/I, Pascal, Cobol 등 컴파일러 언어2) 상수 값 간 기계 내 할당이 컴파일 시 결정1) Fortran: COMMON 문에 주어진 이름이 변수명과 주소 확정2) Fortran, Algol, PL/I 등 부 프로그램의 호출에 의해 주소 확정1) Fortran, Cobol: 프로시저 및 부 프로그램의 적재2) PL/I: 정적 할당 선언된 변수의 기억장소 확정3) Algol, Pascal: 전역(global) 변수의 기억장소 할당4) Fortran: DAT..

every/study 2024.11.10

변수, 바인딩, 식 및 제어문

Chapter 06 변수, 바인딩, 식 및 제어문변수이름, 속성(attribute)의 집합, 참조(reference), 값(value)의 4요소로 구성속성: 자료형, Byte 수 등참조: RAM에서 저장위치를 가르킴 - address, location값: 기억장소에 저장된 실제 값속성의 세부사항제한된 길이의 문자나 숫자로 구성된 변수의 한 요소(component)변수, 함수명, 프로그램 이름 등바인딩 종류설명정적 바인딩(Static binding)컴파일 시 이미 모든 성질들이 결정됨준 동적 바인딩(Semi Dynamic binding)C 언어에서 변수의 성질이 컴파일 시 결정되지만, 기억장소 할당은 실행 시간에 결정됨동적 바인딩(Dynamic binding)실행시간에 성질이 결정됨예시:X : = 3.14..

every/study 2024.11.09

컴파일러 개요

Chapter 5. 컴파일러 개요“컴파일러 일반적 구성”Compiler: 컴파일러는 특정 고급 프로그래밍 언어로 작성된 프로그램을 특정 대상 컴퓨터에서 실행 가능한 코드로 변환하는 컴퓨터 프로그램으로 작성된 프로그램을 변환하는 컴퓨터 프로그램이다..cpp → 컴파일러 → .obj → 링커 → .exe: CPU에 따라 사용하는 기계어가 다르기 때문에 컴파일러에서는 기계 독립적인 .obj 파일까지만 만든다. Compiler StructureFront-end: 언어 의존적인 부분 (기계 독립적)Back-end: 기계 의존적(Front-end Part)Lexical Analyzer (Scanner)컴파일러 내에서 효율적이며 다루기 쉬운 정수로 바꿈소스코드를 읽어 문장을 토큰으로 나누고 토큰 스트림(토큰 번호와 ..

every/study 2024.11.08

프로그래밍 언어 소개

안녕하세요!저는 이번 학기에 프로그래밍 언어론을 수강하고 있어요제가 시험 공부를 하며 만들어본 자료들을 공유하려고 글을 쓰게 되었어요자료 공유에 앞서 저희 교수님께서 사용하시는 교재는 https://www.aladin.co.kr/shop/wproduct.aspx?ItemId=11075379 프로그래밍 언어 개념프로그래밍 언어 개념www.aladin.co.kr위의 교재입니다~!다들 즐공하세요 ㅎㅎhttps://docs.google.com/document/d/1ANlKsWZaqO7RH3vN5kLl79lFzVauqrGcZP0HWCS3eIo/edit?usp=sharing 프로그래밍 언어론(ch01)Chapter1. 프로그래밍 언어 소개 “프로그래밍 언어의 정의” 1940년대 이전: 전선 연결하는 것이 프로그래밍..

every/study 2024.11.05