전체 글
-
[시스템프로그래밍] 3강 기계 명령어의 구성, 주소지정방식프로그래밍/시스템프로그래밍 2014. 4. 25. 03:56
* 명령어의 구성 연산코드(Operation code)연산 코드는 수행할 연산을 지정한다.연산은 니모닉에 의해 표현 2. 피연산자(operand)의 구성피연산자에 저장될 데이터의 형태는 주소, 수 , 문자, 논리 등이 있다.주소는 주기억장치의 주소이거나 레지스터의 주소를 말한다수는 정수, 고정 소수점, 부동 소수점 수, BCE등을 들 수 있다. 3. 명령어의 길이명령어의 길이는 레지스터의 개수, 주소지정방식의 종류, 명령어의 종류에 따라서 달라질 수 있다.기억 장치와 관련하여 명령어 길이를 살펴보면 기억장치의 용량이 많은 경우는 주소의 수가 많아지므로 오퍼랜드의 비트 수가 많아져야 한다기억장치 용량과 기억장치 조직에 의해서 주소를 지정하는 오퍼랜드 부분에 영향을 준다. * 주소지정방식주소지정방식이란 연산..
-
[시스템프로그래밍] 2강 정보의 단위, 진법, 컴퓨터 조직, 주기억장치의 작동, 명령어 수행 사이클, 데이터의 표현, 인터럽트프로그래밍/시스템프로그래밍 2014. 4. 25. 01:46
* 정보의 단위컴퓨터 시스템은 기계어 즉 0,1로 기억장치에 정보를 저장 1.정보의 표현단위bit : 2진1비트, 정보 표현의 최소단위로 binary digit의 약자, 가장 작은 기억단위로서 1개의 비트로 2가지 정보를 저장(0,1)할 수 있다.nibble : 4bit, 비트가 4개 모인 것을 의미byte : 8bit, 의미를 주는 기억단위로 8개의 비트로 구성, 0부터 255까지 256가지 정보를 표현할 수 있으며 컴퓨터코드 표현의 기본단위word : half word(2byte), full word(4byte), double word(8byte) : 자료를 처리하는 기본단위로서 1단어는 8, 16, 32, 64비트로 구성 2.정보(자료)의 처리단위IPS(Instructions Per Second) ..
-
[시스템프로그래밍] 1강 컴퓨터의 구성, 사용자 프로그램의 처리과정프로그래밍/시스템프로그래밍 2014. 4. 24. 04:07
* 컴퓨터의 구성 초기의 컴퓨터 시스템은 수치계산 용도로 개발, 최근에는 다양한 정보를 제공컴퓨터 시스템은 하드웨어, 소프트웨어로 구성하드웨어는 물리적인 기기, 소프트웨어는 하드웨어를 동작시키고 제어하는 역할을 하는 명령어들의 집합으로 시스템 소프트웨어와 응용 소프트웨어가 있다. 1.컴퓨터 하드웨어 개요컴퓨터 하드웨어는 중앙처리장치, 주기억장치, 보조기억장치, 입력장치, 출력장치로 구성 중앙처리장치 : CPU라고 부르며 컴퓨터에 장착되어 있는 장치들을 제어하는 명령어를 해독하고 실행하는 장치로 제어장치(CU)와 연산장치(ALU), 레지스터들로 구성되어 있다.기억장치 : 기억장치는 실행 중인 프로그램과 프로그램에 필요한 데이터를 저장하는 장치를 말하며, 주기억장치, 보조기억장치, 캐시기억장치로 분류할 수 ..
-
[자료구조] 15강 탐색, 정렬프로그래밍/자료구조 2014. 4. 24. 02:41
* 탐색 리스트에서 원하는 키를 찾고자 하는 방법을 탐색이라 하고 탐색 방법의 효율은 리스트에서 레코드들의 배열 순서에 대한 가정에 따라 달라진다.레코드들이 키 필드 값의 순서로 배열되어 있을 경우에는 리스트를 효율적으로 탐색할 수 있다.레코드들이 키 필드 값에 관계없이 임의 순서로 배열되어 있을 경우에는 리스트의 한쪽 끝에서 탐색을 시작해서 원하는 키를 찾거나 리스트의 다른 쪽 끝에 닿을 때까지 각 레코드를 조사해야한다.주어진 리스트에서 원하는 키를 찾는 탐색으로 순차 탐색, 이진 탐색, 피보나치 탐색등이 있다. 1.순차 탐색주어진 리스트에서 탐색키와 같은 레코드를 검색하는 방법으로 리스트에서 순차적으로 킷값을 탐색키와 비교하여 원하는 레코드를 찾는 방법레코드들을 순차적으로 조사해서 순차 탐색(sequ..
-
[자료구조] 14강 그래프의 순회, 최소 비용 신장 트리, 그래프의 응용프로그래밍/자료구조 2014. 4. 23. 04:23
하나의 정점으로부터 시작하여 차례대로 모든 정점들을 한 번씩 방문하는 것을 그래프 순회라고 한다. 그래프 순회는 순회하는 방향에 따라서 깊이 우선 탐색(DFS)와 너비 우선 탐색(BFS)로 나뉜다. 1.깊이 우선 탐색(DFS)깊이 우선 탐색 방법(DFS:Depth-first search)방법은 시작 정점의 한 방향으로 갈 수 있는 경로가 있는 곳까지 깊이 탐색해 가다가 더 이상 갈 곳이 없게 되면 가장 마지막에 만났던 갈림길 간선이 있는 정점으로 되돌아와서 다른 방향의 간선으로 탐색을 계속 반복하여 결국 모든 정점을 방문하게 된다.깊이 우선 탐색은 탐색했던 마지막 정점으로 다시 되돌아가야하기 때문에 후입선출 구조의 스텍을 사용한다. 2.너비 우선 탐색너비 우선 탐색 방법(BFS:Breadth-first ..
-
[자료구조] 13강 그래프, 그래프 표현 방법프로그래밍/자료구조 2014. 4. 23. 02:51
1.그래프의 정의그래프는 정점(vertex), 간선(edge)들의 집합으로 구성되는 비선형 자료구조V(G)와 E(G)는 그래프 G의 정점들의 집합과 간선들의 집합을 나타내며 G=(V,E)로 표기그래프 G에서 정점(vertex)는 V(G)로 표기하고 노드라고 부르기도 한다.간선(edge)는 정점들 간의 관계를 표현하는 방법으로 E(G)로 표기하고 링크(link)라고 부르기도 한다 2.그래프의 용어그래프는 간선들 간의 방향성이 있는지와 간선의 가중치가 있는지 및 간선의 수에 따라 여러 가지 그래프의 종류로 구분 (1) 무방향 그래프무방향 그래프는 정점들 간에 순서가 없는 그래프로서 간선을 의미한다.(2) 방향 그래프방향 그래프는 정점들 간의 순서가 의미 있는 그래프로 다른 간선을 의미(3) 완전 그래프완전 ..
-
[자료구조] 12강 이진 탐색 트리, 선택 트리, 포리스트, 이진 트리의 개수 계산프로그래밍/자료구조 2014. 4. 22. 17:57
* 이진 탐색 트리 1.소개이진 탐색 트리는 임의의 키를 가진 원소를 삽입, 삭제, 검색하는데 효율적인 자료구조로 모든 연산은 킷값을 기초로 실행된다.이진 탐색 트리는 이진 트리이며 공백이 아니면 모든 원소는 상이한 키를 갖는다.왼쪽 서브 트리 원소들의 키가 루트의 키보다 작고 오른쪽 서브 트리 원소들의 키는 루트의 키보다 큰 값들을 가진다. 2.이진 탐색 트리의 탐색이진 탐색 트리에서 킷값이 X인 원소를 탐색하는 방법은 루트 노드를 시작으로 탐색이진 탐색 트리가 공백이면 탐색은 종료탐색하는 노드가 탐색키와 동일한 경우에는 탐색이 성공하고 해당되는 포인터 값을 반환, 반면에 킷값이 동일하지 않으면 현재 노드의 킷값과 탐색 킷값을 비교하여 탐색키가 크면 오른쪽 서브 트리를 탐색하고 탐색키가 작으면 왼쪽 서..
-
[자료구조] 11강 히프프로그래밍/자료구조 2014. 4. 22. 17:00
히프 추상 데이터 타입히프는 여러 개의 값들 중에서 가장 큰 값이나 가장 작은 값을 빠르게 찾을 수 있도록 구성된 자료구조이다.최대히프는 킷값이 가장 큰 노드를 찾기 위한 완전이진 트리이며 부모 노드의 킷값은 자식 노드의 킷값보다 항상 크거나 같다. 따라서 루트노드는 킷값들 중 가장 큰 노드가 된다.최소히프는 킷값이 가장 작은 도르르 찾기 위한 완전이진 트리로 부모 노드의 킷값이 자식 노드의 킷값보다 항상 작거나 같다. 따라서 루트노드는 킷값들 중 가장 작은 노드가 된다. ADT HEAP데이터 : n개의 원소로 구성된 완전 이진트리로서 각 노드의 킷값은 그의 자식 노드의 킷값보다 크거나 같다. (부모 노드의 킷값>=자식 노드의 킷값) createHeap() : 공백 히트를 생성하는 연산isEmpty(he..