• Title/Summary/Keyword: C언어

Search Result 1,287, Processing Time 0.024 seconds

Java Bytecode-to-.NET MSIL IL Translator (자바 바이트코드의 .NET MSIL 중간언어 번역기)

  • Jung, Ji-Hoon;Park, Jin-Ki;Lee, Yang-Sun
    • Proceedings of the Korea Information Processing Society Conference
    • /
    • 2003.11b
    • /
    • pp.663-666
    • /
    • 2003
  • 자바는 썬 마이크로시스템즈사의 제임스 고슬링(James Gosling)에 의해 고안된 언어로 운영체제 및 하드웨어 플랫폼에 독립적인 차세대 언어로 최근에 가장 널리 사용하는 범용 프로그래밍 언어 중 하나이다. 자바 프로그램은 컴파일러에 의해 각 플랫폼에 독립적인 중간 코드 형태의 바이트코드로 변환된 클래스 파일로 생성되면 JVM(Java Virtual Machine)에 의해 실행된다. 마이크로소프트사의 .NET 플랫폼과 C# 언어는 프로그래머들의 요구를 충족시키고 썬사의 JVM 환경과 자바 언어에 대응하기 위해서 개발된 플랫폼과 언어이다. C#과 같은 .NET 언어는 컴파일러에 의해 MSIL(MicroSoft Intermediate Language) 코드로 번역되며 번역된 MSIL 코드는 .NET 플랫폼 환경에서 런타임 엔진인 CLR(Common Language Runtime)에 의해 실행이 된다. 자바로 작성된 프로그램은 JVM 플랫폼에서는 실행이 되지만 .NET 플랫폼에서 실행이 되지 않고, 반대로 C#과 같은 .NET 언어로 작성된 프로그램은 .NET 플랫폼에서는 실행이 되지만 JVM 플랫폼에서 실행이 되지 않는다. 이런 이유로 본 논문에서는 자바소스를 컴파일하여 생성된 클래스 파일에서 Oolong 코드를 생성하고 생성된 Oolong 코드를 .NET의 MSIL 코드로 변환하여 자바로 구현된 프로그램이 .NET 환경에서 실행되도록 하는 Bytecode-to-MSIL 번역기 시스템을 구현하였다. 따라서, 자바 프로그래머는 JVM이나 .NET 플랫폼 환경에 관계없이 프로그램을 작성하여 실행시킬 수 있다. 번역기 시스템의 구현을 정형화하기 위해 Oolong 코드의 명령어들을 문법으로 작성하였으며, PGS를 통해 생성된 어휘 정보를 가지고 스캐너를 구성하였으며, 파싱테이블을 가지고 파서를 설계하였다. 파서의 출력으로 AST가 생성되면 번역기는 AST를 탐색하면서 의미적으로 동등한 MSIL 코드를 생성하도록 시스템을 컴파일러 기법을 이용하여 모듈별로 구성하였다.

  • PDF

Linguistic Analysis of Picture Description for Language Impairment Diagnosis (언어 장애 진단을 위한 그림 설명글의 언어학적 특성 분석)

  • Lee, Yong-Jae;Min, Hye-Jin;Park, Jong-C.
    • Proceedings of the Korean Information Science Society Conference
    • /
    • 2011.06c
    • /
    • pp.244-247
    • /
    • 2011
  • 사람은 성장 배경이나 학습에 따라 고유의 언어 사용 특성을 가지게 된다. 이러한 언어 사용 특성은 개인의 언어 유창성에 대한 지표를 제공하며, 언어 사용 특성에 대한 분석은 장애에 따른 변화에도 능동적으로 대처할 수 있게 한다. 그러나 어떤 특정인의 언어 사용 특성을 파악하는 연구는 아직 부족한 실정이다. 본 연구에서는 개인 언어 사용 특성 파악을 위하여 일차적으로 일반인들의 그림 설명글 데이터를 모았으며, 이에 대한 분석 결과에 기반하여 언어 장애 진단에 적용하기 위한 언어 사용 특성을 파악하고자 한다. 본 연구의 결과로 형태소 단위, 단어 단위, 그리고 내용 전달의 방식에 따른 개인의 언어 사용특성을 일부 파악할 수 있었으며, 이와 같은 특성은 향후 치매와 같은 인지 기능 장애로 인한 언어 사용의 변화를 추적하는데 중요한 실마리를 제공할 수 있을 것으로 기대된다.

Processing Korean Passives for Database Semantics (데이터베이스 의미론을 위한 한국어 피동형의 전산적 처리)

  • Hong, Jung-Ha;Choe, Seung-Chul;Lee, Ki-Yong
    • Annual Conference on Human and Language Technology
    • /
    • 2000.10d
    • /
    • pp.411-418
    • /
    • 2000
  • Hausser (1999)와 이기용 (1999a, 1999c)에서는 데이터베이스 관리 시스템(DBMS)을 이용하여 자연언어의 의미를 다루는 데이터베이스 의미론을 제안하였다. 특히 이기용 (1999c)에서는 수형도(tree), 논리 형태(logical fomulas), 자질 구조(feature structure)와 같은 다양한 언어 표상 형식들을 관계형 데이터베이스 관리 시스템(RDBMS)의 표상 형식인 테이블 형식으로 전환 가능함을 보임으로써 데이터베이스 의미론에 관계형 데이터 베이스 관리 시스템을 도입할 수 있음을 제시하였다. 한편, Lee (2000)에서 제시한 데이터베이스 의미론 모형에서는 데이터베이스 관리 시스템과 사용자(end-user)를 연결하는 언어 정보 처리 시스템(LIPS; Linguistic Information Processing System)을 제안하였다. 이 언어정보 처리 시스템은 사용자에 의해 입력된 언어 자료를 처리하여 그 분석 결과를 데이터베이스 관리 시스템에 전달하고, 이를 통해 구축된 데이터베이스에서 추출한 정보를 다시 사용자에게 전달하는 시스템이다. 이 논문은 한국어 '이, 히, 리, 기' 피동형을 전산처리를 할 수 있도록, 데이터베이스 의미론에서 핵심 요소인 언어정보 처리 시스템과 데이터베이스 관리 시스템을 구현하는 것 이 목적이다.

  • PDF

Flowchart-C Conversion System using Camera (카메라를 이용한 flowchart-C변환 시스템)

  • 이창우;주윤희;손영선
    • Proceedings of the Korean Institute of Intelligent Systems Conference
    • /
    • 2003.05a
    • /
    • pp.165-168
    • /
    • 2003
  • 본 논문에서는 CCD 흑백 카메라를 이용하여 프로그래머의 알고리즘이 표현된 flowchart의 영상을 입력받아 C언어 코드로 변환하는 시스템을 구현하였다. 입력된 영상을 이진화 처리한 영상으로부터 flowchart 기호들을 인식하기 위하여 chain code 방법을 이용하였고, flowchart 기호에 기술된 영문자 및 특수문자의 인식을 위하여 가로 및 세로 히스토그램을 이용하여 한 문자색 분할한 후 각 문자들을 구성하는 흑화소 pixel의 합과 chain code 방법을 사용하였다. 가로 및 세로 투영을 이용하여 흐름선을 인식함으로써 flowchart의 논리흐름을 파악할 수 있었다. 이 시스템을 수치연산에 적용하여, 프로그래머의 알고리즘에 부합하는 프로그램이 작성되어짐을 확인할 수 있었다.

  • PDF

x86 assembly-to-C Translator (x86 assembly-to-C 변환기)

  • Lee, Ho Jin;Lee, Sang Hee;Park, Bo Hyun;Kim, Seon Wook
    • Proceedings of the Korea Information Processing Society Conference
    • /
    • 2010.04a
    • /
    • pp.37-40
    • /
    • 2010
  • 본 논문에서는 C 언어로부터 GNU 컴파일러에 의하여 생성된 x86 어셈블리 코드를 고수준의 언어인 C 코드로 변환하여 출력하는 컴파일러의 구현에 대하여 설명한다. 또한, 원천 C 코드와 새롭게 생성된 C 코드와의 성능 비교분석을 수행하였다.

Design and Implementation of a Language Supporting Compositional Approach to Multiparadigm Programming (결합 방식 멀티패러다임 프로그래밍을 지원하는 언어의 설계 및 구현)

  • Choi, Jong-Myung;Yoo, Chae-Woo
    • The KIPS Transactions:PartA
    • /
    • v.10A no.6
    • /
    • pp.605-614
    • /
    • 2003
  • In this paper we introduce a new style multiparadigm language named Argos which applies a compositional approach [20] to multiparadigm programming. Argos is a superset of the Java, and its grammar has an extension point which allows other languages to be used in Argos programs. Therefore, Argos can support object-oriented programming and multiparadigm programming by enabling each method in a class to be implemented with one of the Java, C, Prolog, Python, and XML languages. Since Argos allows the existing languages to be used, it has advantages such as easiness of learning and high reusability. The Argos compiler is implemented according to the delegating compiler object (DCO) model[28,29]. The compiler partitions a program Into several parts according to the languages used in methods and delivers the parts the languages' processors which compile the parts.

Design and Implementation of a C Coding Style Checker (C 코딩 스타일 검증기의 설계 및 구현)

  • Hwang, Jun-Ha
    • Journal of the Korea Society of Computer and Information
    • /
    • v.13 no.2
    • /
    • pp.31-40
    • /
    • 2008
  • Various coding styles for C language have been proposed so far but there has been a lack of synthetic review about them. In this paper, I propose a new C coding style by analyzing coding rules that are included in the representative C coding styles and by adding new coding rules besides them. In addition, I designed an automated C coding style checker named CStyler which was implemented using Lex and Yacc. It is designed to be able to verify unpreprocessed source code as well as preprocessed source code. And I improved its flexibility by being able to add a new coding rule by end user. I think that the new C coding style and coding style checker, CStyler, can be utilized for education and for future research to develop and extend a static analysis tool.

  • PDF

Token Compiler for Virtual machine on Spacecraft Computer (인공위성 탑재컴퓨터 가상머신을 위한 토큰 컴파일러)

  • Yoon, Young-Il;Jung, Hyun-A;Joe, Hyun-Woo;Kim, Hyung-Shin
    • Proceedings of the Korean Information Science Society Conference
    • /
    • 2012.06a
    • /
    • pp.276-278
    • /
    • 2012
  • 본 논문에서는 인공위성 탑재 컴퓨터의 가상머신에서 사용되는 C 언어와 유사한 언어를 번역하는 SpaceApp 토큰 컴파일러를 개발하였다. SpaceApp은 위성 제어를 위한 지상으로부터 업로드 가능한 프로그램으로, 이를 실행하기 위한 환경으로 자바가상머신과 유사한 SpaceApp 가상머신이 개발되었다. 이러한 가상머신에 필요한 컴파일러는 SpaceApp 언어를 번역할 수 있어야 하고, 실행 가능한 파일 형식으로 변환되어야 한다. 따라서 논문에서 개발한 컴파일러는 C 언어와 유사하게 SpaceApp 언어를 번역 가능하다. 그리고 인공위성 임무에 맞게 라이브러리를 지원하며, 가상머신에서 실행 가능한 파일 형식을 출력할 수 있도록 구현했다. 또한 통합 개발 환경으로 이클립스를 이용하여 편의성을 제공하도록 구현하였다.

A Comparison of Ontology Languages: Focusing on W3C OWL and ISO Topic Maps (온톨로지 언어의 비교 연구: W3C OWL과 ISO 토픽맵을 중심으로)

  • Oh, Sam-Gyun
    • Journal of the Korean BIBLIA Society for library and Information Science
    • /
    • v.15 no.2
    • /
    • pp.71-96
    • /
    • 2004
  • The purpose of this study is to describe major concepts related to W3C OWL and ISO Topic Maps and to provide the result of comparison and analysis regarding semantic expression power between two ontology languages. This paper is comprised of the following parts: 1) describing URI and namespace concepts that are fundamental building block of effective ontology construction; 2) offering detailed explanation of major Topic Map concepts such as topics, associations, and occurrences; 3) providing how to accomplish the second purpose of cataloging(grouping related items when displaying the search result) using Topic Map; and 4) finally explaining the difference between two ontology languages in terms of semantic expression power.

  • PDF

WEBIO Libraries for C and Prolog Languages (C 및 Prolog 언어용 웹 입출력 라이브러리)

  • 신동하
    • Journal of the Korea Institute of Information and Communication Engineering
    • /
    • v.6 no.5
    • /
    • pp.755-761
    • /
    • 2002
  • Before the Internet was available, most application programs were executed using terminals, connected to host computers, as standard input output devices. The Internet is popular today and many services are provided on web browsers connected to the Internet. Since the standard I/O method used for terminals is different from the communication I/O methods used for web browsers, it is not possible to execute many application programs developed for the conventional terminals on web browsers. In this paper, we describe Web Input Output(WEBIO) library that enables application programs conventional on terminals to be executed on web browsers by recompilation without source modification. The WEBIO libraries for C and Prolog languages have been developed and they are under test now.