상세 컨텐츠

본문 제목

Blue Orange OP Code

etc

by ryujt 2010. 10. 13. 16:37

본문

OP 코드라고 하지만, 쉽게 읽을 수 있는 가벼운 인터프린터형 언어라고 보면 됩니다.
초기 컴파일러를 테스트하기 위해서 설계하였습니다.
컴파일러가 완성되면 플래시 등으로 플랫폼을 옮겨갈 예정입니다.
모든 코드는 대소문자 구별이 없습니다.
  • 변수 선언
    • Boolean (변수이름)
    • String (변수이름)
    • Number(변수이름) : double
    • 사용자 변수는 언더바(_)로 시작하며, 시스템 변수는 언더바로 시작할 수 없다.
  • 시스템 변수
    • ResultBoolean, ResultString, ResultNumber : 연산 이후 결과를 저장
    • ReturnBoolean, ReturnString, ReturnNumber : 함수 호출 이후 결과를 저장
  • 연산
    • 이항연산
      • Plus (변수/데이터) (변수/데이터)
      • Minus (변수/데이터) (변수/데이터)
      • Mul (변수/데이터) (변수/데이터)
      • Div (변수/데이터) (변수/데이터)
      • Mod (변수/데이터) (변수/데이터)
    • 단항연산
      • Inc (변수)
      • Dec (변수)
    • 문자열 연산
      • Cat (변수/데이터)
      • Length (변수/데이터)
      • CharAt (인덱스)
    • 논리연산
      • Equal (변수/데이터) (변수/데이터)
        • Number의 경우에는 문자열로 변경한 후 비교하도록 한다.
      • Big (변수/데이터) (변수/데이터)
      • Small (변수/데이터) (변수/데이터)
      • Not (변수/데이터)
  • 조건문
    • If (변수) (OP Code)
      • 문자의 경우 문자열의 길이가 0보다 크면 true
    • IfNot (변수) (OP Code)
  • 함수 호출
    • Call (함수이름) [인수1, 인수2 ...]
  • 스택
    • Push (변수/데이터)
    • POP (변수)
    • POP : 버리기
    • Peek (변수)
    • Peek (변수, 인덱스) : 인덱스 만큼 깊은 곳의 자료를 인출
  • 기타
    • // : 주석
    • Const (상수이름) (데이터)
    • @라벨이름
    • Jump @라벨이름
    • Move (변수/Data) to (변수)

'etc' 카테고리의 다른 글

영풍문고의 서비스  (0) 2010.10.14
시스템 함수  (0) 2010.10.13
컴파일러 만드는 중 (Blue Orange)  (2) 2010.09.17
텍스트 기반 Network Programming 설계  (1) 2010.05.24
About me  (0) 2010.05.23

관련글 더보기