AML ( Anil's Machine Language ) is a powerful, portable, and efficient system for solving mathematical problems.  Its use is not strictly limited to math, but that tends to be the main focus.  The syntax is much easier than a machine language as the instruction set is easy to understand.  For example, to read an integer from the user, the READ command is used.  This reads an integer from the user and puts its value into the accumulator.  The basic abstraction is a machine language with an assembler twist.  All programming code is stored in the same variable space as the data, so instructions can be modified on the fly at run time.  This power makes AML a very usable language for almost any type of work where a basic formula needs to be computed over and over again with different variables.
    All AML programs are written for the virtual AML machine that has a specified number of memory cells.  An AML program written in Linux is binary compatible with one that is written in DOS.
    AML was designed by Anil Dhawan ( Master Coder Anil ) on a Linux box running Slackware Linux 7.0.  The programming was done using Emacs under X11 and the debugging was done using GDB.  The following is the syntax table for AML.  This table will be handy when programming in AML.
 

AML Instruction Table
Instruction
Operation Code
Meaning
READ
10
stdin->ax
WRITE
11
ax->stdout
LOAD
20
loc->ax
STORE
21
ax->loc
PUSH
22
push ax
POP
23
pop ax
INC
25
ax++
DEC
26
ax--
SHL 27 ax << loc
SHR 28 ax >> loc
ADD
30
ax += loc
SUB
31
ax -= loc
DIV
32
ax /= loc
MUL
33
ax *= loc
MOD
34
ax mod= loc
JMP
40
jump loc
JMPN
41
jump if ax < 0
JMPZ
42
jump if ax == 0
HALT
43
stop
CALL
44
jump loc, store next location
RETURN
45
jump to stored location
CONST
--
literal data

The current AML version is 2.0 ( released March 6th 2000 ).

Select your operating system:
SunOS 5.5Linux 2.2DOS ( Win32 )
Source Code

101082 people have visited this page.
Copyright (c) 2000 Anil Dhawan.


OpenLDAP + JNDI Tutorial: Click Here