- Integration with updated sim_card API - Addition of MT (Mag Tape) device - Addition of DSK (Disk) device - Build time simulator test
63 lines
No EOL
3 KiB
Text
63 lines
No EOL
3 KiB
Text
+ A accumulator is address 0037
|
|
+ B accumulator is address 0089
|
|
+ K accumulator is address 0057
|
|
+ branch to address 0026 to resume execution of FDS operations on next address
|
|
+
|
|
+ Floating point format EE mmmm mmmm
|
|
+ FDS instruction: + AAAA OP AAAA BBBB-
|
|
+ IBM 650 instruction: + AAAA OP (DA) (IA)
|
|
+
|
|
+ constants
|
|
+ 0500 50 0000 0000 0.0 floating point
|
|
+ 0501 50 1000 0000 1.0 floating point
|
|
+ 0502 00 0000 0001 decimal 1
|
|
+ 0503 00 0000 0010 decimal 10 max number of results
|
|
+ 0504 00 0000 0000 decimal zero
|
|
+ 0505 00 1100 0000 start of interpretive FDS program
|
|
+
|
|
+ variables
|
|
+ 0510 00 0000 0000 N float
|
|
+ 0511 00 0000 0000 sqrt(n)
|
|
+ 0512 00 0000 0000 iteration count
|
|
+
|
|
+ Main FDS program
|
|
+
|
|
+ 1100 01 0510 0501- FDS A(N=0510) + B(1.0=0501) -> K
|
|
+ 1101 69 0057 1201 ld dist<-K
|
|
+ 1201 24 0510 1202 std 0510 N<-K
|
|
+ 1202 60 0512 1203 rau 0512 acc=iteration count
|
|
+ 1203 10 0502 1204 au 0502 acc=acc+1
|
|
+ 1204 21 0512 1205 stu 0512 interation count=acc
|
|
+ 1205 11 0503 1206 su 0503 compare with max num of iterations
|
|
+ 1206 46 0026 9999 brmin continue interpretation, else stop
|
|
+ 1102 16 0510 0511- FDS sqrt(A(N=0510)) -> B (0511)
|
|
+ 1103 69 0512 1210 ld iteration count
|
|
+ 1210 24 0977 1211 std word1 punch area
|
|
+ 1211 69 0510 1212 ld N float
|
|
+ 1212 24 0978 1213 std word2 punch area
|
|
+ 1213 69 0511 1214 ld sqrt(N) float
|
|
+ 1214 24 0979 1215 std word3 punch area
|
|
+ 1215 71 0977 0026 pch Iteration num N float sqrt(N) float, then continue interpretation
|
|
+ 1104 12 1100 0000- FDS BR A(=1100)
|
|
+
|
|
+ 1000 69 0504 1001 ld dist=0 decimal
|
|
+ 1001 24 0512 1002 std iteration count
|
|
+ 1002 69 0500 1003 ld dist=0 float
|
|
+ 1003 24 0510 1004 std N
|
|
+ 1004 65 0505 0420 ral acc=start of interpretive program, start interpretation
|
|
+
|
|
+ should print
|
|
+
|
|
+ 00 0000 0001 50 1000 0000 50 1000 0000
|
|
+ 00 0000 0002 50 2000 0000 50 1414 2135
|
|
+ 00 0000 0003 50 3000 0000 50 1732 0508
|
|
+ 00 0000 0004 50 4000 0000 50 2000 0000
|
|
+ 00 0000 0005 50 5000 0000 50 2236 0679
|
|
+ 00 0000 0006 50 6000 0000 50 2449 4897
|
|
+ 00 0000 0007 50 7000 0000 50 2645 7513
|
|
+ 00 0000 0008 50 8000 0000 50 2828 4271
|
|
+ 00 0000 0009 50 9000 0000 50 3000 0000
|
|
+
|
|
+ iteration num N=1..9 float sqrt(N) float
|
|
+
|
|
+g1000 transfer card. Start execution at addr 1000 |