KR100234108B1 - Editor for numerical control apparatus and data managing method thereof - Google Patents
Editor for numerical control apparatus and data managing method thereof Download PDFInfo
- Publication number
- KR100234108B1 KR100234108B1 KR1019970011888A KR19970011888A KR100234108B1 KR 100234108 B1 KR100234108 B1 KR 100234108B1 KR 1019970011888 A KR1019970011888 A KR 1019970011888A KR 19970011888 A KR19970011888 A KR 19970011888A KR 100234108 B1 KR100234108 B1 KR 100234108B1
- Authority
- KR
- South Korea
- Prior art keywords
- data
- address
- data storage
- list
- dimensional
- Prior art date
Links
Images
Classifications
-
- G—PHYSICS
- G05—CONTROLLING; REGULATING
- G05B—CONTROL OR REGULATING SYSTEMS IN GENERAL; FUNCTIONAL ELEMENTS OF SUCH SYSTEMS; MONITORING OR TESTING ARRANGEMENTS FOR SUCH SYSTEMS OR ELEMENTS
- G05B19/00—Programme-control systems
- G05B19/02—Programme-control systems electric
- G05B19/18—Numerical control [NC], i.e. automatically operating machines, in particular machine tools, e.g. in a manufacturing environment, so as to execute positioning, movement or co-ordinated operations by means of programme data in numerical form
- G05B19/408—Numerical control [NC], i.e. automatically operating machines, in particular machine tools, e.g. in a manufacturing environment, so as to execute positioning, movement or co-ordinated operations by means of programme data in numerical form characterised by data handling or data format, e.g. reading, buffering or conversion of data
- G05B19/4083—Adapting programme, configuration
Landscapes
- Engineering & Computer Science (AREA)
- Human Computer Interaction (AREA)
- Manufacturing & Machinery (AREA)
- Physics & Mathematics (AREA)
- General Physics & Mathematics (AREA)
- Automation & Control Theory (AREA)
- Information Retrieval, Db Structures And Fs Structures Therefor (AREA)
Abstract
본 발명은 수치제어장치용 에디터 및 데이타관리방법에 관한 것으로서, 본 발명에 따른 에디터의 데이타관리방법은, 입력되는 데이타를 2차원배열구조로 된 복수의 2차원데이타저장부에 각각 저장하는 단계와, 상기 각 2차원데이타저장부에 대해 리스트어드레스를 부여하여 리스트구조를 형성하는 단계를 포함한다. 이에 의해, 데이타의 크기에 제한을 받지 않고 효율적으로 데이타를 관리할 수 있다.The present invention relates to an editor for a numerical control device and a data management method. The data management method of the editor according to the present invention includes the steps of storing input data in a plurality of two-dimensional data storage units having a two-dimensional array structure. And providing a list address to each of the two-dimensional data storage units to form a list structure. As a result, data can be efficiently managed without being limited by the size of the data.
Description
본 발명은 수치제어장치용 에디터 및 데이타관리방법에 관한 것이다.The present invention relates to an editor and a data management method for a numerical control device.
에디터란 문자데이타에 대한 입력, 저장, 추가, 수정 등을 행하기 위한 프로그램을 말하며, 디지탈신호에 의한 공작기계의 자동제어를 위한 수치제어장치 등에 채용되고 있다.The editor is a program for inputting, storing, adding, and modifying text data. The editor is employed in a numerical control device for automatic control of a machine tool by digital signals.
이러한 수치제어용 에디터는 비교적 작은 크기의 명령어나 프로그램을 처리하기 때문에 대부분 메모리용량이 크지 않고 비교적 단순한 데이타자료구조를 가진다. 이러한 종래의 데이타구조에 의한 데이타관리방법으로는 CAD출력파일과 같은 대형 프로그램들을 효과적으로 다루기가 어려웠다.Since these numerical editors process relatively small commands or programs, most of them do not have large memory and have relatively simple data structures. The data management method using such a conventional data structure has been difficult to deal with large programs such as CAD output files effectively.
일반적인 에디터에서 비교적 많이 사용되는 자료구조는 1차원배열, 2차원배열, 리스트구조, 블럭구조 등을 들 수 있다.Relatively popular data structures in editors include one-dimensional arrays, two-dimensional arrays, list structures, and block structures.
도 2는 1차원배열의 자료구조를 나타낸 것으로서, 이 도면에서 볼 수 있는 바와 같이, 1차원배열은 주어진 메모리영역에서 데이타가 시리얼로 저장되며, 하나의 연속적인 메모리에 데이타를 저장하므로 저장된 메모리에 대한 줄단위접근시 접근 과정이 단순하고, 접근한 위치에서 삽입 및 삭제, 수정이 이루어지므로 작업이 단순하다. 그러나, 데이타가 하나의 연속적인 메모리에 시리얼로 저장되므로 데이타의 삽입 및 삭제 후에는 남아있는 데이타가 할당된 메모리내에서 시리얼로 저장되도록 하여야 한다. 따라서, 작업이 이루어진 부분 이후의 데이타는 모두 변동된 메모리 부분만큼 이동해야 하므로 데이타가 많은 경우에는 효율이 크게 떨어진다. 그리고, 각 데이타로의 접근시, 원하는 데이타의 위치를 찾기 위해서는 처음의 데이타의 위치부터 순서대로 찾아가야 하므로 데이타가 많은 경우에는 더욱 효율이 떨어진다. 또한, 할당된 메모리의 크기를 변경할 수 없으므로 그 크기보다 큰 데이타는 읽어들일 수 없다. 더구나, 할당된 메모리의 크기가 고정되어 있어서, 할당된 메모리의 크기보다 작은 데이타를 읽어들일 때에는 사용하지 않는 메모리가 생기게 되어 메모리가 낭비된다는 단점이 있다.2 shows a data structure of a one-dimensional array. As can be seen in this figure, a one-dimensional array has data stored in serial in a given memory area and stored in one continuous memory. When accessing line by line, the access process is simple, and the operation is simple because insertion, deletion, and modification are performed at the accessed position. However, since data is stored serially in one continuous memory, after data insertion and deletion, the remaining data must be stored serially in the allocated memory. Therefore, since the data after the part where the work is done must move by the changed memory part, the efficiency is greatly reduced when there is a lot of data. In addition, when accessing each data, in order to find the desired data position, the data must be searched in order from the first data position. Also, since the size of the allocated memory cannot be changed, data larger than that size cannot be read. Moreover, since the size of the allocated memory is fixed, there is a disadvantage that the memory is wasted because unused memory is generated when reading data smaller than the allocated memory size.
도 3은 2차원배열의 자료구조를 나타낸 것이다. 2차원배열에서는 사용 가능한 어드레스(42-45)의 수가 고정되어 있다. 그리고, 이 어드레스(42-45)는 메모리의 어드레스저장영역(41)에 연속적으로 저장되어 있으며, 각 어드레스(42-45)에 대응하는 메모리에 해당 줄단위데이타(46-49)가 저장되어 있다. 2차원배열에서는 각 어드레스(42-45)에 대응되는 줄단위데이타(46-49)를 찾아가기 위해서 어드레스저장영역(41)에 있는 어드레스(42-45)에 의해 각 줄단위데이타(46-49)에 접근하므로 접근속도가 빠르며 삽입 및 삭제 등의 작업을 신속하게 할 수 있다. 또한 각 어드레스(42-45)에 대응하는 줄단위데이타(46-49)는 필요한 메모리만 사용하므로 메모리의 낭비가 1차원배열에 비해 훨씬 적다. 그러나, 메모리의 어드레스저장영역(41)에 연속적으로 저장된 어드레스(42-45)의 수는 한 번 설정되면 고정되어 있어서, 추가하여 어드레스를 할당할 수가 없다. 그러므로, 때에 따라서 메모리를 많이 요구하는 데이타는 읽어들일 수 없다는 단점이 있다.3 shows a data structure of a two-dimensional array. In the two-dimensional array, the number of usable addresses 42-45 is fixed. The addresses 42-45 are continuously stored in the address storage area 41 of the memory, and the corresponding line unit data 46-49 are stored in the memory corresponding to each address 42-45. . In the two-dimensional array, in order to find the line data 46-49 corresponding to each address 42-45, each line data 46-49 by the address 42-45 in the address storage area 41 is obtained. ), The access speed is fast, and the operations such as insertion and deletion can be performed quickly. In addition, since the line unit data 46-49 corresponding to each address 42-45 uses only necessary memory, the waste of memory is much smaller than that of the one-dimensional array. However, the number of addresses 42-45 continuously stored in the address storage area 41 of the memory is fixed once set, and further addresses cannot be allocated. Therefore, there is a drawback that data that requires a lot of memory may not be read in some cases.
리스트구조에서는, 도 4와 같이, 메모리의 어드레스저장영역(51)에 각 줄단위데이타(56-58)에 대응되는 어드레스(52-54)가 저장되어 있다. 그리고, 어드레스저장영역(51)에는 저장된 각 줄단위데이타(56-58)의 어드레스(52-54)와 줄단위데이타(56-58)의 순서상 전후에 위치한 줄단위데이타에 대응하는 어드레스를 함께 저장하고 있다. 그래서, 저장된 각각의 어드레스(52-54)는 다른 어드레스와 상호 억세스 가능하도록 연결되어 있다. 따라서, 각 어드레스(52-54)의 연결관계를 변경함으로써 새로운 어드레스의 추가 및 삭제가 가능하다. 또한, 필요한 어드레스만 추가로 할당하면 되므로 메모리의 낭비가 적고, 데이타의 크기에 상관없이 데이타를 관리할 수 있게 된다. 그러나, 각 어드레스(52-54)에 해당하는 줄단위데이타(56-58)에 접근할 때에는 각 줄단위데이타(56-58) 중 최초의 데이타(56)에 대응하는 어드레스(52)부터 어드레스저장영역(51)에 산재해 있는 해당 어드레스를 찾아가게 된다. 그러므로, 데이타가 많은 경우, 각 줄단위데이타에 접근할 때에는 효율이 떨어지게 된다. 그리고, 삽입 및 삭제시, 삽입 및 삭제된 줄단위데이터에 해당하는 어드레스와 연결되는 다른 어드레스의 값을 변경시켜야 된다는 단점이 있다.In the list structure, as shown in FIG. 4, addresses 52-54 corresponding to each line unit data 56-58 are stored in the address storage area 51 of the memory. In the address storage area 51, the addresses 52-54 of the stored row data 56-58 and the addresses corresponding to the row data located in the order before and after the row data 56-58 are also included. Saving. Thus, each of the stored addresses 52-54 is connected to each other so as to be mutually accessible. Therefore, new addresses can be added and deleted by changing the connection relationship of each address 52-54. In addition, since only necessary addresses need to be additionally allocated, there is little waste of memory and data can be managed regardless of the size of the data. However, when accessing the line unit data 56-58 corresponding to each address 52-54, the address is stored from the
블럭구조는, 도 5에서와 같이, 2차원배열과 비슷한 구조를 가지지만, 어드레스저장영역(61)에서 연속적으로 저장된 어드레스(62-65)를 추가 및 삭제할 수 있다는 점에서 상이하다. 따라서, 데이타의 크기에 상관없이 각 줄단위데이타(66-69)의 어드레스(62-65)를 추가하여 관리할 수 있으므로, 메모리의 낭비를 방지할 수 있다. 그러나, 어드레스저장영역(61)에서 연속적으로 저장된 어드레스(62-65)의 수를 변경할 때에는 어드레스저장영역(61)에 있는 모든 어드레스(62-65)를 어드레스저장영역(61)의 다른 부분에 복사하고, 원래의 어드레스(62-65)는 삭제하게 된다. 따라서, 작업속도가 떨어지게 된다는 단점이 있다. 또한, 이와 같은 과정을 되풀이하게 되면 연속적으로 사용 가능한 어드레스저장영역(61)이 줄어든다. 따라서, 점차적으로 어드레스저장영역(61)의 사용가능한 메모리가 불연속적으로 되는 메모리조각화가 증가되어 실제적으로 큰 데이타를 읽어들일 수 없게 된다는 단점이 있다.The block structure has a structure similar to that of the two-dimensional array as in FIG. 5, but differs in that addresses 62-65 continuously stored in the
이와 같이, 종래에 비교적 널리 사용되고 있는 데이타구조들은 나름대로의 장단점을 가지고 있고, 필요에 따라 적절히 선택되고 있다. 그런데, 종래의 수치제어장치용 에디터들은 CAD출력파일과 같은 큰 데이타를 편집하는 경우가 적었기 때문에 1차원배열이나 2차원배열과 같은 자료구조로도 충분하였으나, 근래에 수치제어장치에서 필요한 메모리의 크기가 중가함에 따라 큰 데이타의 편집을 위해서는 보다 효율적인 데이타관리방법이 필요하게 되었다. 종래의 리스트구조나 블럭구조는 큰 파일을 다룰 수 있는 기능은 있다. 그러나, 리스트구조의 경우, 각 줄단위데이타에 접근할 때에는 어드레스저장영역에 산재해 있는 각 줄단위데이타에 대응되는 어드레스를 차례로 따라가야 하므로 작업속도가 느리다. 그리고, 블럭구조는 크기를 변경할 때 기존의 어드레스들을 다른 장소에 복사하고, 기존의 저장된 어드레스들을 삭제하는 과정에서 어드레스저장영역에 있는 메모리의 조각화를 유발하여 메모리의 사용효율을 저하시킨다는 단점이 있다.As such, data structures that are relatively widely used in the related art have their advantages and disadvantages, and are appropriately selected as necessary. By the way, since the conventional editors for numerical controllers rarely edit large data such as CAD output files, data structures such as one-dimensional arrays or two-dimensional arrays were sufficient. As the size increases, more efficient data management methods are required for editing large data. Conventional list and block structures have the ability to handle large files. However, in the case of the list structure, when accessing each line data, the work speed is slow because the address corresponding to each line data scattered in the address storage area must be followed in sequence. In addition, the block structure has a disadvantage in that the memory efficiency is reduced by causing fragmentation of the memory in the address storage area in the process of copying existing addresses to another place and deleting existing stored addresses when the size is changed.
따라서, 본 발명의 목적은, 수치제어장치용 에디터의 특성을 고려하여 데이타의 크기에 상관없이 효율적으로 데이타를 관리할 수 있는 수치제어장치용 에디터 및 그 데이타관리방법을 제공하는 것이다.Accordingly, it is an object of the present invention to provide an editor for a numerical control device and a data management method thereof capable of efficiently managing data regardless of the size of the data in consideration of the characteristics of the numerical control device editor.
도 1은 본 발명에 따른 에디터의 데이타구조도,1 is a data structure diagram of an editor according to the present invention;
도 2는 종래의 1차원배열의 데이타구조도,2 is a data structure diagram of a conventional one-dimensional array;
도 3은 종래의 2차원배열의 데이타구조도,3 is a data structure diagram of a conventional two-dimensional array;
도 4는 종래의 리스트구조의 데이타구조도,4 is a data structure diagram of a conventional list structure;
도 5는 종래의 블럭구조의 데이타구조도이다.5 is a data structure diagram of a conventional block structure.
〈도면의 주요부분에 대한 부호의 설명〉<Explanation of symbols for main parts of drawing>
10 : 리스트어드레스저장부 11,12 : 리스트어드레스10: list
20,30 : 2차원데이타저장부 21,31 : 어드레스저장메모리20,30:
22-25 : 줄단위어드레스 26-29 : 줄단위데이타저장부22-25: Line address 26-29: Line data storage
상기 목적은, 본 발명에 따라, 수치제어장치용 에디터의 데이타관리방법에 있어서, 입력되는 데이타를 2차원배열구조로 된 복수의 2차원데이타저장부에 각각 저장하는 단계와, 상기 각 2차원배열구조에 대해 리스트어드레스를 부여하여 리스트구조를 형성하는 단계를 포함하는 것을 특징으로 하는 수치제어장치용 에디터의 데이타관리방법에 의해 달성된다.According to the present invention, in the data management method of an editor for a numerical control device, storing the input data in a plurality of two-dimensional data storage units having a two-dimensional array structure, and each of the two-dimensional arrays. And a list address is given to the structure to form a list structure.
여기서, 상기 2차원데이타저장부는, 복수의 줄단위의 데이타저장부를 가지며, 상기 각 줄단위데이타저장부에 대응되는 어드레스가 연속적으로 저장되는 어드레스저장메모리를 갖는 것이 유리하다. 그리고, 상기 각 리스트어드레스는 다른 리스트어드레스와 연결되어 연결리스트로서 관리할 수 있다.Here, the two-dimensional data storage unit has a plurality of row data storage units, it is advantageous to have an address storage memory that stores the address corresponding to each of the line data storage unit continuously. Each list address may be connected to another list address and managed as a linked list.
한편, 상기 목적은, 본 발명에 따라, 수치제어장치용 에디터에 있어서, 입력되는 데이타를 저장하는 2차원배열구조로 된 복수의 2차원데이타저장부와, 상기 각 2차원데이타저장부에 대해 부여된 리스트어드레스가 저장되는 리스트어드레스저장부를 포함하는 것을 특징으로 하는 수체제어장치용 에디터에 의해 달성된다.On the other hand, in accordance with the present invention, in the editor for a numerical control device, a plurality of two-dimensional data storage units having a two-dimensional array structure for storing input data, and the respective two-dimensional data storage units are provided. It is achieved by an editor for a water body control device, characterized in that it comprises a list address storage unit for storing the list address.
이하 첨부도면을 참조하여 본 발명을 상세히 설명하고자 한다.Hereinafter, the present invention will be described in detail with reference to the accompanying drawings.
도 1은 본 발명에 따른 에디터의 데이타구조도이다. 이 도면에서 볼 수 있는 바와 같이, 본 발명에 따른 에디터의 데이타구조는, 데이타가 줄단위로 저장되어 있는 줄단위데이타저장부(26-29)를 2차원배열로써 관리하는 복수의 2차원데이타저장부(20,30)와, 각 2차원데이타저장부(20,30)에 대응되는 리스트어드레스(11,12)를 저장하는 리스트어드레스저장부(10)를 갖는다.1 is a data structure diagram of an editor according to the present invention. As can be seen from this figure, the data structure of the editor according to the present invention stores a plurality of two-dimensional data storing the two-dimensional array of data storage units 26-29 in which data is stored in lines. And a list
2차원데이타저장부(20,30)에는 각 줄단위데이타저장부(26-29)가 2차원배열구조로 저장되어 있다. 줄단위데이타저장부(26-29)에 해당하는 어드레스(22-25)는 메모리의 어드레스저장메모리(21)에 연속적으로 저장된다. 그러므로, 하나의 2차원데이타저장부에서의 줄단위데이타저장부의 수와 그에 대응하여 어드레스저장메모리에 있는 어드레스의 수는 같다. 그리고, 각 2차원데이타저장부(20,30)의 최초 줄단위데이타에 대응하는 어드레스는 리스트어드레스(11,12)로서 리스트어드레스저장부(10)에서 연결리스트로 관리된다. 즉, 하나의 2차원데이타저장부에는 하나의 리스트어드레스가 할당되어 있다.In the two-dimensional
따라서, 리스트어드레스저장부(10)에서는 하나의 리스트어드레스와 데이타의 저장순서상 전후의 2차원데이타저장부에 대응되는 리스트어드레스가 함께 저장되어 있다. 그러므로, 저장된 데이타에 대한 작업을 하기 위해 각 줄단위데이타저장부(26-29)로 접근을 할 경우에, 각 줄단위데이터저장부(26-29)가 속해 있는 2차원데이타저장부(20,30)로는 리스트구조의 방법으로 접근하고, 각 2차원데이타저장부(20,30)로 접근한 후에는 2차원배열의 방법으로 각 줄단위데이타저장부(26-29)를 찾아가게 되는 것이다. 따라서, 2차원배열과 비슷한 속도를 유지하며 각 줄단위데이타저장부(26-29)로 접근하게 된다.Accordingly, the list
본 발명에 따른 데이타관리방법을 사용하기 위해서는, 우선, 데이타를 관리하는데 필요한 2차원배열로 이루어진 2차원데이타저장부(20,30)의 줄단위어드레스 개수가 설정되어야 한다. 그리고, 2차원배열로 이루어진 2차원데이타저장부(20,30) 내의 각 줄단위에 해당 데이타가 저장되고, 그 데이타에 대응되는 어드레스가 어드레스저장메모리에 저장되며, 각 줄단위데이타저장부(26-29)에 대응되는 어드레스(22-25) 중 최초의 어드레스가 리스트어드레스(11,12)로서 관리되어야 한다.In order to use the data management method according to the present invention, first, the number of line units of the two-dimensional
이하에서, 본 발명에 따른 데이타관리방법의 일 예를 설명한다.Hereinafter, an example of a data management method according to the present invention will be described.
먼저, 사용자가 설정한 2차원배열로 된 2차원데이타저장부의 어드레스 개수를 설정한다. 그리고, 데이타는 2차원데이타저장부에 줄단위로 저장되며, 줄단위데이타저장부가 더 필요한 경우에는 2차원데이타저장부가 하나 더 할당되며, 데이타를 계속해서 저장하게 된다.First, the number of addresses of the two-dimensional data storage unit of the two-dimensional array set by the user is set. Then, the data is stored in the two-dimensional data storage unit by line, and if more data is required in the line unit, one more two-dimensional data storage unit is allocated, and the data is continuously stored.
위에서 기술한 바와 같이, 입력된 데이타가 각 2차원데이타저장부에 나뉘어 관리되면, 각 2차원데이타저장부의 최초 줄단위데이타에 대응되는 어드레스는 리스트어드레스저장부에 리스트어드레스로서 다른 리스트어드레스와 함께 연결리스트로 관리된다.As described above, when the input data is divided and managed in each two-dimensional data storage unit, an address corresponding to the first line unit data of each two-dimensional data storage unit is connected to the list address storage unit as another list address as a list address. It is managed as a list.
한편, 상기와 같이 주어진데이타가 본 발명의 데이타관리방법으로 관리되는 경우 각 줄단위데이타로의 접근방법을 아래에 기술한다.On the other hand, when the data given as described above is managed by the data management method of the present invention, the approach to each line data is described below.
본 발명에 의해 관리되는 데이타에 접근하기 위해서는, 우선, 2차원배열로 된 각 2차원데이타저장부의 번호를 계산한다. 2차원데이타저장부의 번호는 0부터 시작하는 값이다. 임의의 줄단위데이타가 속해있는 2차원데이타저장부의 번호는 0부터 시작하는 값으로서, 접근줄번호를 2차원데이타저장부가 관리하는 줄단위의 데이타저장부의 수로 나눈 값이다. 여기서, 접근줄번호는 0부터 시작하며, 각 줄단위데이타의 순서를 나타내는 값이다. 예를 들어, 접근줄번호가 26이고, 2차원데이타저장부가 관리하는 줄단위데이타저장부의 수가 5이면 그 데이타저장부의 번호는 5가 되고, 6번째 데이타저장부가 되는 것이다.In order to access the data managed by the present invention, first, the number of each two-dimensional data storage unit in two-dimensional array is calculated. The number of 2D data storage is a value starting from 0. The number of the 2D data storage unit to which an arbitrary line unit data belongs is a value starting from 0, which is obtained by dividing the access line number by the number of line data storage units managed by the 2D data storage unit. Here, the access line number starts from 0 and indicates the order of each line data. For example, if the access line number is 26 and the number of line unit data storage units managed by the 2D data storage unit is 5, the data storage unit number is 5 and becomes the sixth data storage unit.
상기와 같이 2차원데이타저장부의 번호가 계산되면 그 다음으로 옵셋을 계산한다. 옵셋은 각 데이타저장부에서의 몇 번째 줄단위데이타인지를 가리키는 줄번호를 나타내는 것으로서 0부터 시작한다. 옵셋의 계산은 접근줄번호를 2차원데이타저장부의 줄단위데이타저장부의 수로 나눈 나머지 값이다. 예를 들어, 접근줄번호가 38이고 2차원데이타저장부의 줄단위데이타저장부의 수가 7이면 옵셋은 3이 되며, 이 값은 네 번째 줄번호가된다.If the number of the two-dimensional data storage unit is calculated as described above, then the offset is calculated. The offset is a zero-based line number that indicates the line number data in each data store. The offset is calculated by dividing the access line number by the number of line unit data storage units in the 2D data storage unit. For example, if the access line number is 38 and the number of line data storage units in the 2D data storage unit is 7, the offset is 3, and this value becomes the fourth line number.
이상과 같이, 2차원데이타저장부의 번호와 2차원데이타저장부 안에서의 옵셋이 계산되면, 처음의 2차원데이타저장부에 대응되는 리스트어드레스로부터 시작하여 연결리스트로 연결된 해당 2차원데이타저장부의 리스트어드레스를 찾아간다. 그리고, 해당 리스트어드레스가 있는 곳을 찾아간 후에는 그 리스트어드레스에 대응되는 어드레스저장메모리에 접근한다. 여기에서는 이미 계산되 옵셋을 이용하여 어드레스저장메모리에 연속적으로 저장된 각 줄단위어드레스 중 해당 어드레스를 찾아 각 줄단위데이타에 접근하게 되는 것이다.As described above, when the number of the 2D data storage unit and the offset in the 2D data storage unit are calculated, the list address of the 2D data storage unit connected to the linked list starting from the list address corresponding to the first 2D data storage unit Go to After the list address is found, the address storage memory corresponding to the list address is accessed. In this case, each line unit data is accessed from each line unit address stored in the address storage memory by using the offset already calculated.
이와 같은 방법으로, 2차원배열로 된 2차원데이타저장부까지는 리스트구조의 방법으로 관리하게되며, 2차원데이타저장부부터는 종래의 2차원배열의 구조로 관리하게 된다. 따라서, 필요할 때마다 2차원데이타저장부를 추가하여 할당할 수 있고, 데이타의 크기에 상관 없이 2차원배열과 비슷한 속도를 유지하게 된다. 또한, 본 발명에 따른 데이타구조를 사용하면 리스트구조에 의하여 데이타가 삽입 및 삭제되므로 삽입 및 삭제가 용이하며, 어드레스저장영역에서의 메모리조각화가 일어나지 않기 때문에 메모리를 효율적으로 이용할 수 있게 된다.In this way, the two-dimensional data storage unit of the two-dimensional array is managed by the list structure method, and the two-dimensional data storage unit is managed by the conventional two-dimensional array structure. Therefore, two-dimensional data storage can be added and allocated whenever necessary, and the speed is maintained similar to that of two-dimensional array regardless of the data size. In addition, the data structure according to the present invention facilitates insertion and deletion since data is inserted and deleted by the list structure, and memory can be efficiently used because memory fragmentation does not occur in the address storage area.
이상 설명한 바와 같이, 본 발명에 따르면, 데이타의 크기에 상관없이 효율적인 데이타관리방법 및 장치가 제공된다.As described above, according to the present invention, an efficient data management method and apparatus are provided regardless of the size of data.
Claims (6)
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
KR1019970011888A KR100234108B1 (en) | 1997-03-31 | 1997-03-31 | Editor for numerical control apparatus and data managing method thereof |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
KR1019970011888A KR100234108B1 (en) | 1997-03-31 | 1997-03-31 | Editor for numerical control apparatus and data managing method thereof |
Publications (2)
Publication Number | Publication Date |
---|---|
KR19980075645A KR19980075645A (en) | 1998-11-16 |
KR100234108B1 true KR100234108B1 (en) | 1999-12-15 |
Family
ID=19501623
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
KR1019970011888A KR100234108B1 (en) | 1997-03-31 | 1997-03-31 | Editor for numerical control apparatus and data managing method thereof |
Country Status (1)
Country | Link |
---|---|
KR (1) | KR100234108B1 (en) |
-
1997
- 1997-03-31 KR KR1019970011888A patent/KR100234108B1/en not_active IP Right Cessation
Also Published As
Publication number | Publication date |
---|---|
KR19980075645A (en) | 1998-11-16 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
KR100319598B1 (en) | Flash memory array access method and device | |
US7401174B2 (en) | File system defragmentation and data processing method and apparatus for an information recording medium | |
US6578129B1 (en) | Optimized virtual memory management for dynamic data types | |
KR100614469B1 (en) | Storage device | |
US6256644B1 (en) | Control system for storing data in accordance with predefined characteristics thereof | |
KR20050066228A (en) | Data managing device and method for flash memory | |
WO2001029715A9 (en) | Database for electronic design automation applications | |
JPH08235880A (en) | Memory management method of flash memory | |
JP4921174B2 (en) | How to write data to flash memory | |
JP2005222534A (en) | Data management apparatus and method used for flash memory | |
KR100234108B1 (en) | Editor for numerical control apparatus and data managing method thereof | |
TWI715408B (en) | Flash memory controller, memory device and method for accessing flash memory module | |
da Silva et al. | Power exploration for dynamic data types through virtual memory management refinement | |
US7441093B2 (en) | Segmentation management using a rolling window technique | |
CN1988039A (en) | Flash storage scattered writing method | |
CN113407111B (en) | Flash memory controller, method of flash memory controller and memory device | |
JPH07104983A (en) | Generation control device and generation control method | |
KR100479170B1 (en) | Access control device for memory and method thereof | |
JPS6353636A (en) | Buffer controller | |
CN106484630A (en) | The Memory Controller of the access method of flash memory and correlation and electronic installation | |
JPH0239225A (en) | Filing system | |
JPH06110884A (en) | Editing device | |
KR100359311B1 (en) | Method for storaging image data | |
JP3267313B2 (en) | Relocation method of multiple operation programs | |
JP2000267707A (en) | Sequence controller, maintenance method for maintenance area in the same device, and recording medium for storing computer program for executing the same method |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
A201 | Request for examination | ||
E701 | Decision to grant or registration of patent right | ||
GRNT | Written decision to grant | ||
FPAY | Annual fee payment |
Payment date: 20070830 Year of fee payment: 9 |
|
LAPS | Lapse due to unpaid annual fee |