Coder Social home page Coder Social logo

sic-xe-assembler's Introduction

SIC/XE Machine Assembler


Author

MinJunKweon

What is SIC/XE Machhine

Function

  • Control Section
  • Addressing Mode (Flag bit)
    • Direct Addressing Mode
    • Indirect Addressing Mode
    • Simple Addressing Mode
    • Immediate Addressing Mode
    • Relative Addressing Mode
      • Program Counter (PC Register)
      • Base (Base Register)
  • Extended Instruction (4bit Instruction)
  • Floating Point Number
  • External Symbol Reference & Define

Sample Source

All of Source files MUST HAVE '.asm' extension

	COPY     START   0              
	FIRST    STL     RETADR            
	         LDB    #LENGTH             
	         BASE    LENGTH             
	CLOOP   +JSUB    RDREC              
	         LDA     LENGTH           
	         COMPF	 ZEROF			 Float Type Zero           
	         JEQ     ENDFIL              
	        +JSUB    WRREC
			 LDF	 FLOAT1			 Floating Point Immdidate
			 ADDF	 FLOAT2			 for Instruction Set II Test
			 FIX					 1 byte instruction
	         J       CLOOP 
	ENDFIL   LDA     EOF             
	         STA     BUFFER 
	         LDA    #3            
	         STA     LENGTH           
	        +JSUB    WRREC
	         J      @RETADR            Indirect Addressing Mode
	EOF      BYTE    C'EOF' 
	RETADR   RESW    1
	LENGTH   RESW    1
	ZEROF	 WORD	 0.0				for floating point type number (6 byte)
	FLOAT1	 WORD	 15.357
	FLOAT2	 WORD	 14.643				for floating point type number
	BUFFER   RESB    4096
	RDREC    CLEAR   X
	         CLEAR   A
	         CLEAR   S
	        +LDT    #4096
	RLOOP    TD      INPUT    
	         JEQ     RLOOP          
	         RD      INPUT
	         COMPR   A,S             
	         JEQ     EXIT       
	         STCH    BUFFER,X              
	         TIXR    T                          
	         JLT     RLOOP            
	EXIT     STX     LENGTH         
	         RSUB             
	INPUT    BYTE    X'F1'                
	WRREC    CLEAR   X         
	         LDT     LENGTH            
	WLOOP    TD      OUTPUT           
	         JEQ     WLOOP              
	         LDCH    BUFFER,X 
	         WD      OUTPUT
	         TIXR    T
	         JLT     WLOOP
	         RSUB
	OUTPUT   BYTE    X'05'
	COPY2	 CSECT						 for Control Section Test
			 EXTDEF	 BUFFER,BUFEND,LENGTH	 for D record Test
			 EXTREF	 RDREC2,WRREC2			 for R record Test
	FIRST2	 STL	 RETADR
	CLOOP	+JSUB	 RDREC2
			 LDA	 LENGTH
			 COMP	#0
			 JEQ	 ENDFIL
			+JSUB	 WRREC2
			 J		 CLOOP
	ENDFIL	 LDA	 EOF
			 STA	 BUFFER
			 LDA	#3
			 STA	 LENGTH
			 +JSUB	 WRREC2
			 J		@RETADR
	RETADR	 RESW	 1
	LENGTH	 RESW	 1
	EOF		 BYTE	 C'EOF'
	BUFFER	 RESB	 4096
	BUFEND	 WORD	 4147
	MAXLEN	 WORD	 4096
	RDREC2	 CSECT
			 EXTREF	 BUFFER,LENGTH,BUFEND
		 	 CLEAR	 X
			 CLEAR	 A
			 CLEAR	 S
			 LDT	 MAXLEN
	RLOOP	 TD		 INPUT
			 JEQ	 RLOOP
			 COMPR	 A,S
			 JEQ	 EXIT
			 +STCH	 BUFFER,X
			 TIXR	 T
			 JLT	 RLOOP
	EXIT	 +STX	 LENGTH
			 RSUB
	INPUT	 BYTE	 X'F1'
	MAXLEN	 WORD	 4096
	WRREC2	 CSECT
			 EXTREF	 LENGTH,BUFFER
			 CLEAR	 X
			 +LDT	 LENGTH
	WLOOP	 TD		#5
			 JEQ	 WLOOP
			 +LDCH	 BUFFER,X
			 WD		#5
			 TIXR	 T
			 JLT	 WLOOP
			 RSUB
			 END	 FIRST 

Question?

  • Please create issue on this repository

Please create Pull Request if you want

sic-xe-assembler's People

Contributors

minjunkweon avatar

Stargazers

 avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar

Watchers

 avatar  avatar  avatar

Forkers

hihiks whtpdud

Recommend Projects

  • React photo React

    A declarative, efficient, and flexible JavaScript library for building user interfaces.

  • Vue.js photo Vue.js

    ๐Ÿ–– Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.

  • Typescript photo Typescript

    TypeScript is a superset of JavaScript that compiles to clean JavaScript output.

  • TensorFlow photo TensorFlow

    An Open Source Machine Learning Framework for Everyone

  • Django photo Django

    The Web framework for perfectionists with deadlines.

  • D3 photo D3

    Bring data to life with SVG, Canvas and HTML. ๐Ÿ“Š๐Ÿ“ˆ๐ŸŽ‰

Recommend Topics

  • javascript

    JavaScript (JS) is a lightweight interpreted programming language with first-class functions.

  • web

    Some thing interesting about web. New door for the world.

  • server

    A server is a program made to process requests and deliver data to clients.

  • Machine learning

    Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.

  • Game

    Some thing interesting about game, make everyone happy.

Recommend Org

  • Facebook photo Facebook

    We are working to build community through open source technology. NB: members must have two-factor auth.

  • Microsoft photo Microsoft

    Open source projects and samples from Microsoft.

  • Google photo Google

    Google โค๏ธ Open Source for everyone.

  • D3 photo D3

    Data-Driven Documents codes.