[시스템소프트웨어/전자공학]SIC/XE Assembler
*민*
다운로드
장바구니
소개글
* 제가 이 프로젝트 하기 위해 5~6개의 다른 소스를 참조 했는데요.감히 말씀 드리지만, 다른것들과 비교할 수 없을만큼 완성도 있게 잘 만들었습니다.
Input코드의 처리능력이나 에러처리, 프로그램 소스의 모듈화, 주석처리...
그리고 레포트 역시 꼼꼼하고 비주얼하게 정리해 놨기 때문에 몇번 보시면 이해되실꺼예요.
난해한거 있으시면 메일 주시구요 middlism@nate.com입니다.
그럼 열공하세요~
소개
- SIC/XE 어셈블러 프로그램입니다.
- 기능을 조금만 제거하면 SIC 어셈블러로 활용할 수 있습니다.
- 보시면 아시겠지만, 프로그램은 대단히 완성도가 높습니다.
- 소스 라인수가 많은편이지만, 기능별 모듈화가 잘되어 있어, 이해하기 쉬울 것입니다.
- 코드가 깔끔하게 정리되어 있으며, 주석 또한 꼼꼼히 붙여 놨습니다.
- 레포트에 프로그램의 전체적 구조 및 특징, 소스의 함수/변수 설명, 실행결과등에 대한 내용을 캡쳐화면을 통해 비주얼하게 설명해 놓았습니다.
● 내 용 물
- 레포트(36 page)
- 프리젠테이션
> 프로그램 구조를 설명하는 프리젠테이션 (21 Page)
> 프로그램의 특징을 설명하는 프리젠테이션 (17 Page)
- 출력용 소스파일
- 프로그램 소스 (약1500 line)
컴파일 실행환경
● 개발환경C언어 (Visual C/C++ 6 on Windows)
* #include 부분만 조금 바꾸면 gcc로 컴파일 가능합니다.
본문내용
● 처리능력 / 특 징· Source Code를 매우 유연하게 Token할 수 있는 능력
(대소문자 모두 사용, 공백, 탭 사용에 대한 제약조건 없음)
· 거의 완벽한 Error 검출 능력 (총 28가지)
· Visual C/C++와 비슷한 메커니즘의 Error처리를 구현
· 다양한 Command Option을 제공하여, 사용자가 원하는 산출물을 선택적으로 얻도록 함
· 각각의 Data structure에 대한 원활한 처리를 가능하게 하는 다양한 함수들을 구현
(Insert, Search, Fetch, Print등)
● 개발원칙
· Source를 가능한 유연하게 인식할 수 있도록 한다.
· 상징성이 있는 모든 수치, 문자, 문자열등은 #define하여 사용한다.
· 자주 등장하는 조건식은 macro화 하여 사용한다.
· 하나의 함수는 가능한 두 페이지(약 70라인)를 넘지 않는다 (두개의 함수가 이를 어김)
● 단 점
· Assemble할 Source를 두 번만 읽어야 하며, Line단위로 처리한다는 제약조건 때문에,
일부 Function의 라인수가 길어짐.
● 그 외
· 100% 직접 구상하고 개발하였습니다.
· 함수개수 : 38개 / · 라인수 : 약 1800라인(주석 포함)
- 목차
Ⅰ.Introduction
Ⅱ.Data Structure
Ⅲ.Macro Definition
Ⅳ.Function Prototype
Ⅴ.Execution Flow
Ⅵ.Error Process
Ⅶ.Command Option
Ⅷ.Run & Result
Ⅸ.Comment about Files
for Quick Comprehension
- 참고자료
System Software 3rd Edition / Leland L. Beck 저 / ADDISON WESLEY
한국어판 / 유원희, 이필규, 김유성 공역 / 홍릉출판사
압축파일 내 파일목록
SIC_XE Execution/2.5+literal.txt
SIC_XE Execution/COPY_Intermediate1.txt
SIC_XE Execution/COPY_Intermediate2.txt
SIC_XE Execution/COPY_Object.txt
SIC_XE Execution/COPY_Table_Literal.txt
SIC_XE Execution/COPY_Table_OPCode.txt
SIC_XE Execution/COPY_Table_Symbol.txt
SIC_XE Execution/errormsg.txt
SIC_XE Execution/opcode.txt
SIC_XE Execution/SIC_XE.exe
SIC_XE Execution/source.txt
SIC_XE Source/2.5+literal.txt
SIC_XE Source/define.h
SIC_XE Source/errormsg.txt
SIC_XE Source/errproc.c
SIC_XE Source/hashlink.c
SIC_XE Source/opcode.txt
SIC_XE Source/passone.c
SIC_XE Source/passtwo.c
SIC_XE Source/sic_xe.c
SIC_XE Source/SIC_XE.dsp
SIC_XE Source/SIC_XE.dsw
SIC_XE Source/SIC_XE.exe
SIC_XE Source/SIC_XE.ncb
SIC_XE Source/SIC_XE.opt
SIC_XE Source/SIC_XE.plg
SIC_XE Source/source.txt
발표자료/SIC_XE Assembler 발표자료1 (이상익).ppt
발표자료/SIC_XE Assembler 발표자료2 (황민규).ppt
최종보고서/SIC_XE Assembler Project (Complete Report).hwp
최종보고서/Program Souce (출력용)/define.h.hwp
최종보고서/Program Souce (출력용)/errproc.c.hwp
최종보고서/Program Souce (출력용)/hashlink.c.hwp
최종보고서/Program Souce (출력용)/passone.c.hwp
최종보고서/Program Souce (출력용)/passtwo.c.hwp
최종보고서/Program Souce (출력용)/sic_xe.c.hwp
최종보고서/Program Souce (출력용)/Source Codes Report (표지).hwp
SIC_XE Execution/COPY_Intermediate1.txt
SIC_XE Execution/COPY_Intermediate2.txt
SIC_XE Execution/COPY_Object.txt
SIC_XE Execution/COPY_Table_Literal.txt
SIC_XE Execution/COPY_Table_OPCode.txt
SIC_XE Execution/COPY_Table_Symbol.txt
SIC_XE Execution/errormsg.txt
SIC_XE Execution/opcode.txt
SIC_XE Execution/SIC_XE.exe
SIC_XE Execution/source.txt
SIC_XE Source/2.5+literal.txt
SIC_XE Source/define.h
SIC_XE Source/errormsg.txt
SIC_XE Source/errproc.c
SIC_XE Source/hashlink.c
SIC_XE Source/opcode.txt
SIC_XE Source/passone.c
SIC_XE Source/passtwo.c
SIC_XE Source/sic_xe.c
SIC_XE Source/SIC_XE.dsp
SIC_XE Source/SIC_XE.dsw
SIC_XE Source/SIC_XE.exe
SIC_XE Source/SIC_XE.ncb
SIC_XE Source/SIC_XE.opt
SIC_XE Source/SIC_XE.plg
SIC_XE Source/source.txt
발표자료/SIC_XE Assembler 발표자료1 (이상익).ppt
발표자료/SIC_XE Assembler 발표자료2 (황민규).ppt
최종보고서/SIC_XE Assembler Project (Complete Report).hwp
최종보고서/Program Souce (출력용)/define.h.hwp
최종보고서/Program Souce (출력용)/errproc.c.hwp
최종보고서/Program Souce (출력용)/hashlink.c.hwp
최종보고서/Program Souce (출력용)/passone.c.hwp
최종보고서/Program Souce (출력용)/passtwo.c.hwp
최종보고서/Program Souce (출력용)/sic_xe.c.hwp
최종보고서/Program Souce (출력용)/Source Codes Report (표지).hwp