I thought I was the only person left on the planet that did VAX assembly.
The ultimate complex instruction set with instructions like MOVTUC, POLYD and ACBL
What did these instructions do?
How many were in the instruction set?
MOVTUC: Move Translated Until Character
moves a string from source to destination using a 256 entry translation table and will stop when the given character is encountered or either the source or destination string are done.
Both source and destination strings have lengths supplied.
POLYD: Polynomial Evaluation using D_Floating point format.
VAX supported 4 floating point formats of different sizes and exponents
F_floating 1 bit sign, 8 bits exponent (bias 127) 23 bits fraction (IEEE 754 single-precision float)
D_floating 1 bit sign, 8 bits exponent (bias 127) 55 bits fraction
(could be converted to F_float by discarding the last 32 bits, great for high precision calculations and then you could convert it to float for the final answer.
G_floating 1 bit sign, 11 bits exponent (bias 1023) 52 bits fraction (IEEE 754 double-precision float)
H_floating 1 bit sign, 15 bits exponent (bias 16383) 112 bits fraction
for the full description on what POLY did, look at page 322 of the linked doc.
ACBL: Add Compare and Branch (Long)
opcode limit.rx, add.rx, index.mx, displ.bw
limit is what to compare to, add is what to add to the index operand, displ is a sign-extended value for the jump when the comparison is greater than or equal to 0. Used for For and Do loops.
Here is the full VAX Instruction Set:
http://h20565.www2.hp.com/hpsc/doc/public/display?docId=emr_na-c04623178But really I don't think it's of any use anymore, but it was a really powerful instruction set, RISC superseded it in the early 90s and the Alpha chip just put the last nails in the coffin.
Other than in college I've never used it since since all the coding was done in Fortran or C, in the meanwhile DEC was switching to MIPS processors for their DECStations, final end of life for VAX was on the year 2000.
I worked using VAX until 1995, by that time we replaced our 8600 for a Dec Alpha server, original cost of the 8600 probably was around half a million and we got about $10,000 trade in value (after about 10 years) for the Alpha server that sat in the same huge room with halon system and power conditioning on a raised floor.
But that 8600 could have over one hundred users connected and no one felt a hitch. Awesome machine!