KR101118819B1 - 심볼과 수식을 지원하는 컴파일러를 기록한 기록 매체 - Google Patents
심볼과 수식을 지원하는 컴파일러를 기록한 기록 매체 Download PDFInfo
- Publication number
- KR101118819B1 KR101118819B1 KR1020100011671A KR20100011671A KR101118819B1 KR 101118819 B1 KR101118819 B1 KR 101118819B1 KR 1020100011671 A KR1020100011671 A KR 1020100011671A KR 20100011671 A KR20100011671 A KR 20100011671A KR 101118819 B1 KR101118819 B1 KR 101118819B1
- Authority
- KR
- South Korea
- Prior art keywords
- code
- symbol
- formula
- compiler
- converted
- Prior art date
Links
Images
Classifications
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F8/00—Arrangements for software engineering
- G06F8/40—Transformation of program code
- G06F8/41—Compilation
- G06F8/42—Syntactic analysis
- G06F8/427—Parsing
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F17/00—Digital computing or data processing equipment or methods, specially adapted for specific functions
- G06F17/10—Complex mathematical operations
- G06F17/11—Complex mathematical operations for solving equations, e.g. nonlinear equations, general mathematical optimization problems
- G06F17/13—Differential equations
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F17/00—Digital computing or data processing equipment or methods, specially adapted for specific functions
- G06F17/10—Complex mathematical operations
- G06F17/16—Matrix or vector computation, e.g. matrix-matrix or matrix-vector multiplication, matrix factorization
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F8/00—Arrangements for software engineering
- G06F8/40—Transformation of program code
- G06F8/41—Compilation
- G06F8/44—Encoding
- G06F8/447—Target code generation
Landscapes
- Engineering & Computer Science (AREA)
- Physics & Mathematics (AREA)
- General Physics & Mathematics (AREA)
- Theoretical Computer Science (AREA)
- Mathematical Physics (AREA)
- General Engineering & Computer Science (AREA)
- Pure & Applied Mathematics (AREA)
- Mathematical Optimization (AREA)
- Mathematical Analysis (AREA)
- Computational Mathematics (AREA)
- Data Mining & Analysis (AREA)
- Software Systems (AREA)
- Algebra (AREA)
- Databases & Information Systems (AREA)
- Computing Systems (AREA)
- Operations Research (AREA)
- Devices For Executing Special Programs (AREA)
Abstract
Description
도 2는 본 발명의 일 실시예에 따른 심볼과 수식을 지원하는 컴파일러의 동작 방법을 설명하기 위해 도시한 흐름도이다.
120: 분석부
130: 변환부
140: 검사부
150: 설정부
160: 제어부
Claims (10)
- 수식 입력기를 통해 프로그래머에 의해 작성된 수식을 소스 코드로서 입력 받는 입력부;
상기 입력된 수식을 파싱(parsing)하여 연산자, 변수 및 상수 중 적어도 하나의 토큰(token)으로 분류하고, 상기 분류된 토큰을 일련의 토큰열(token-sequence)로 전환하는 분석부; 및
상기 전환된 토큰열을 미리 설정된 수식 포맷의 집합에서 검색하고, 상기 토큰열과 매칭되는 수식 포맷이 상기 수식 포맷의 집합에서 검색되는 경우, 상기 토큰열을 상기 수식에 대응하는 코드로 변환하되, 상기 수식이 미분인 경우, 이전 미분값에 관한 정보를 저장하고, 상기 저장된 정보를 이용하여 상기 토큰열을 상기 미분과 관련한 코드로 변환하는 것을 특징으로 하는 심볼과 수식을 지원하는 컴파일러를 기록한 기록 매체.
- 삭제
- 제1항에 있어서,
상기 변환부는
상기 수식이 미적분인 경우, 상기 프로그래머에 의해 미리 설정된 미적분 수행 시간(dt)을 이용하여 상기 토큰열을 상기 미적분과 관련한 코드로 변환하는 것을 특징으로 하는 심볼과 수식을 지원하는 컴파일러를 기록한 기록 매체.
- 제1항에 있어서,
상기 변환부는
상기 수식이 구간이 주어진 미적분인 경우, 미리 제작된 수치해석 솔버(solver)를 이용하여 상기 구간이 주어진 미적분의 해답을 도출하고, 상기 도출된 해답을 이용하여 상기 토큰열을 상기 미적분과 관련한 코드로 변환하는 것을 특징으로 하는 심볼과 수식을 지원하는 컴파일러를 기록한 기록 매체.
- 제1항에 있어서,
상기 변환부는
상기 수식이 행렬인 경우, 상기 프로그래머에 의해 미리 설정된 행렬 크기를 이용하여 상기 토큰열을 상기 행렬과 관련한 코드로 변환하는 것을 특징으로 하는 심볼과 수식을 지원하는 컴파일러를 기록한 기록 매체.
- 제1항에 있어서,
상기 변환부는
상기 수식이 시그마 또는 행렬 연산인 경우, 반복문을 이용하여 상기 토큰열을 상기 시그마와 관련한 코드로 변환하는 것을 특징으로 하는 심볼과 수식을 지원하는 컴파일러를 기록한 기록 매체.
- 제1항에 있어서,
상기 변환부는
상기 수식에 심볼이 포함된 경우, 상기 심볼을 해당 문자열로 이루어진 제1 코드로 변환하되, 상기 심볼에 상기 심볼을 꾸며주는 부호가 포함된 경우, 상기 부호를 해당 문자열로 이루어진 제2 코드로 변환한 후 상기 제1 코드와 결합하는 것을 특징으로 하는 심볼과 수식을 지원하는 컴파일러를 기록한 기록 매체.
- 제1항에 있어서,
상기 변환부는
상기 수식에 심볼이 포함된 경우, 상기 심볼을 해당 문자열로 이루어진 제1 코드로 변환하되, 상기 심볼에 번호가 포함된 경우, 상기 심볼을 해당 상수 또는 배열로 이루어진 코드로 변환하는 것을 특징으로 하는 심볼과 수식을 지원하는 컴파일러를 기록한 기록 매체.
- 제1항에 있어서,
배열을 사용하는 코드의 경우, 미리 선언된 변수의 크기와 상기 수식에서 억세스하는 배열의 범위를 비교하여 상기 코드의 타당성을 검사하고, 중복된 심볼을 사용하는 코드의 경우, 상기 중복된 심볼이 동일한 심볼인지를 확인하여 상기 코드의 타당성을 검사하며, 미적분을 사용하는 코드의 경우, 미적분 수행 시간이 미리 설정되어 있는지를 확인하여 상기 코드의 타당성을 검사하는 검사부
를 더 포함하는 것을 특징으로 하는 심볼과 수식을 지원하는 컴파일러를 기록한 기록 매체.
- 제1항에 있어서,
상기 코드가 미리 선언되어 있는 변수나 함수명과 충돌하는 것을 회피할 수 있도록, 상기 코드가 상기 변수나 상기 함수명과 동일할 경우 상기 코드를 다른 값으로 변경하는 규약을 정하는 설정부
를 더 포함하는 것을 특징으로 하는 심볼과 수식을 지원하는 컴파일러를 기록한 기록 매체.
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
KR1020100011671A KR101118819B1 (ko) | 2010-02-08 | 2010-02-08 | 심볼과 수식을 지원하는 컴파일러를 기록한 기록 매체 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
KR1020100011671A KR101118819B1 (ko) | 2010-02-08 | 2010-02-08 | 심볼과 수식을 지원하는 컴파일러를 기록한 기록 매체 |
Publications (2)
Publication Number | Publication Date |
---|---|
KR20110092161A KR20110092161A (ko) | 2011-08-17 |
KR101118819B1 true KR101118819B1 (ko) | 2012-03-20 |
Family
ID=44929144
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
KR1020100011671A KR101118819B1 (ko) | 2010-02-08 | 2010-02-08 | 심볼과 수식을 지원하는 컴파일러를 기록한 기록 매체 |
Country Status (1)
Country | Link |
---|---|
KR (1) | KR101118819B1 (ko) |
Families Citing this family (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
KR102131423B1 (ko) * | 2019-02-14 | 2020-07-08 | (주)메인라인 | 문서의 자동 컴파일 방법 및 장치 |
Citations (3)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JP2000305786A (ja) * | 1999-04-23 | 2000-11-02 | Fujitsu Ltd | コンパイル処理装置及びプログラム記録媒体 |
US20080066052A1 (en) * | 2006-09-07 | 2008-03-13 | Stephen Wolfram | Methods and systems for determining a formula |
US20080091409A1 (en) * | 2006-10-16 | 2008-04-17 | Microsoft Corporation | Customizable mathematic expression parser and evaluator |
-
2010
- 2010-02-08 KR KR1020100011671A patent/KR101118819B1/ko active IP Right Grant
Patent Citations (3)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JP2000305786A (ja) * | 1999-04-23 | 2000-11-02 | Fujitsu Ltd | コンパイル処理装置及びプログラム記録媒体 |
US20080066052A1 (en) * | 2006-09-07 | 2008-03-13 | Stephen Wolfram | Methods and systems for determining a formula |
US20080091409A1 (en) * | 2006-10-16 | 2008-04-17 | Microsoft Corporation | Customizable mathematic expression parser and evaluator |
Also Published As
Publication number | Publication date |
---|---|
KR20110092161A (ko) | 2011-08-17 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
US8601453B2 (en) | COBOL to bytecode translation | |
EP4075267A1 (en) | Combination method and apparatus for multiple change versions of software codes | |
JP2007304998A (ja) | ソースコード生成方法及び装置並びにプログラム | |
US8954940B2 (en) | Integrating preprocessor behavior into parsing | |
JP2014519630A (ja) | 中間フォーマットを用いた、swfのhtmlへのクロスコンパイル | |
JP5779077B2 (ja) | プログラムの生成を支援する装置及び方法 | |
CA3021091C (en) | Method, apparatus, and computer-readable medium for performing functional testing of software | |
CN108595334B (zh) | 一种计算Java程序动态切片的方法、装置及可读存储介质 | |
CN111443904A (zh) | 一种生成可执行代码的方法及计算机可读存储介质 | |
Juričić | Detecting source code similarity using low-level languages | |
KR101118819B1 (ko) | 심볼과 수식을 지원하는 컴파일러를 기록한 기록 매체 | |
CN115904480B (zh) | 代码重构方法、装置、电子设备及存储介质 | |
KR20200071413A (ko) | 학습용 데이터 생성 장치, 소스 코드 오류 분석 장치 및 방법 | |
US20210096830A1 (en) | Incremental code generation method | |
JP5405684B1 (ja) | ソースプログラムのプログラミング言語変換装置 | |
CN106126225B (zh) | 一种基于程序演进模型的目标代码逆向工程方法 | |
CN109460236B (zh) | 程序版本构建和检查方法及系统 | |
CN116360794A (zh) | 数据库语言解析方法、装置、计算机设备及存储介质 | |
CN105843661B (zh) | 一种面向主机系统的代码重定位方法及其系统 | |
CN114327614A (zh) | 参考模型数据流记录和分析的方法及应用 | |
KR102206019B1 (ko) | 시뮬레이션 모델 연동을 위한 어댑터 개발 지원 장치 및 방법 | |
JP5932707B2 (ja) | 計算機、プログラム及びデータ生成方法 | |
CN107612919B (zh) | 协议配置方法及装置 | |
CN109597624A (zh) | 一种sql格式化的方法 | |
KR101585048B1 (ko) | 다이어그램 기반 알고리즘 시뮬레이션 시스템 |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
A201 | Request for examination | ||
E902 | Notification of reason for refusal | ||
E701 | Decision to grant or registration of patent right | ||
GRNT | Written decision to grant | ||
FPAY | Annual fee payment |
Payment date: 20150213 Year of fee payment: 4 |
|
FPAY | Annual fee payment |
Payment date: 20160205 Year of fee payment: 5 |
|
FPAY | Annual fee payment |
Payment date: 20161209 Year of fee payment: 6 |
|
FPAY | Annual fee payment |
Payment date: 20180208 Year of fee payment: 7 |
|
FPAY | Annual fee payment |
Payment date: 20190115 Year of fee payment: 8 |
|
FPAY | Annual fee payment |
Payment date: 20191015 Year of fee payment: 9 |