Changeset 35
 Timestamp:
 Sep 3, 2010, 3:44:27 PM (10 years ago)
 Location:
 Deliverables/D4.1
 Files:

 2 edited
Legend:
 Unmodified
 Added
 Removed

Deliverables/D4.1/ASM.mli
r31 r35 40 40 carry * [ bit  nbit]) union3 41 41  ORL of 42 (acc * [ reg  d irect  indirect ],42 (acc * [ reg  data  direct  indirect ], 43 43 direct * [ acc  data ], 44 44 carry * [ bit  nbit]) union3 45 45  XRL of 46 (acc * [ reg  direct  indirect ],46 (acc * [ data  reg  direct  indirect ], 47 47 direct * [ acc  data ]) union2 48 48  CLR of [ acc  carry  bit ] 
Deliverables/D4.1/ASMInterpret.ml
r33 r35 269 269  (false,true,false,false),(true,r1,r2,r3) > 270 270 ORL (`U1(`A, `REG(r1,r2,r3))), pc, 1 271  (false,true,false,false),(false,true,false,true) > 272 let pc,b1 = next pc in 273 ORL (`U1(`A, `DIRECT b1)), pc, 1 274  (false,true,false,false),(false,true,true,i1) > 275 ORL (`U1(`A, `INDIRECT i1)), pc, 1 276  (false,true,false,false),(false,true,false,false) > 277 let pc,b1 = next pc in 278 ORL (`U1(`A, `DATA b1)), pc, 1 279  (false,true,false,false),(false,false,true,false) > 280 let pc,b1 = next pc in 281 ORL (`U2(`DIRECT b1, `A)), pc, 1 282  (false,true,false,false),(false,false,true,true) > 283 let pc,b1 = next pc in 284 let pc,b2 = next pc in 285 ORL (`U2 (`DIRECT b1, `DATA b2)), pc, 2 286  (false,true,true,true),(false,false,true,false) > 287 let pc,b1 = next7 pc in 288 ORL (`U3 (`C, `BIT b1)), pc, 2 289  (true,false,true,false),(false,false,false,false) > 290 let pc,b1 = next7 pc in 291 ORL (`U3 (`C, `NBIT b1)), pc, 2 292  (true,true,false,true),(false,false,false,false) > 293 let pc,b1 = next pc in 294 POP (`DIRECT b1), pc, 2 295  (true,true,false,false),(false,false,false,false) > 296 let pc,b1 = next pc in 297 PUSH (`DIRECT b1), pc, 2 298  (false,false,true,false),(false,false,true,false) > 299 RET, pc, 2 300  (false,false,true,true),(false,false,true,false) > 301 RETI, pc, 2 302  (false,false,true,false),(false,false,true,true) > 303 RL `A, pc, 1 304  (false,false,true,true),(false,false,true,true) > 305 RLC `A, pc, 1 306  (false,false,false,false),(false,false,true,true) > 307 RR `A, pc, 1 308  (false,false,false,true),(false,false,true,true) > 309 RRC `A, pc, 1 310  (true,true,false,true),(false,false,true,true) > 311 SETB `C, pc, 1 312  (true,true,false,true),(false,false,true,false) > 313 let pc,b1 = next7 pc in 314 SETB (`BIT b1), pc, 1 315  (true,false,false,false),(false,false,false,false) > 316 let pc,b1 = next pc in 317 SJMP (`REL b1), pc, 2 318  (true,false,false,true),(false,true,false,true) > 319 let pc,b1 = next pc in 320 SUBB (`A, `DIRECT b1), pc, 1 321  (true,false,false,true),(false,true,true,i1) > 322 SUBB (`A, `INDIRECT i1), pc, 1 323  (true,false,false,true),(false,true,false,false) > 324 let pc,b1 = next pc in 325 SUBB (`A, `DATA b1), pc, 1 326  (true,true,false,false),(false,true,false,false) > 327 SWAP `A, pc, 1 328  (true,true,false,false),(true,r1,r2,r3) > 329 XCH (`A, `REG(r1,r2,r3)), pc, 1 330  (true,true,false,false),(false,true,false,true) > 331 let pc,b1 = next pc in 332 XCH (`A, `DIRECT b1), pc, 1 333  (true,true,false,false),(false,true,true,i1) > 334 XCH (`A, `INDIRECT i1), pc, 1 335  (true,true,false,true),(false,true,true,i1) > 336 XCHD(`A, `INDIRECT i1), pc, 1 337  (false,true,true,false),(true,r1,r2,r3) > 338 XRL(`U1(`A, `REG(r1,r2,r3))), pc, 1 339  (false,true,true,false),(false,true,false,true) > 340 let pc,b1 = next pc in 341 XRL(`U1(`A, `DIRECT b1)), pc, 1 342  (false,true,true,false),(false,true,true,i1) > 343 XRL(`U1(`A, `INDIRECT i1)), pc, 1 344  (false,true,true,false),(false,true,false,false) > 345 let pc,b1 = next pc in 346 XRL(`U1(`A, `DATA b1)), pc, 1 347  (false,true,true,false),(false,false,true,false) > 348 let pc,b1 = next pc in 349 XRL(`U2(`DIRECT b1, `A)), pc, 1 350  (false,true,true,false),(false,false,true,true) > 351 let pc,b1 = next pc in 352 let pc,b2 = next pc in 353 XRL(`U2(`DIRECT b1, `DATA b2)), pc, 2 271 354 with 272 355 Not_found > raise BOO
Note: See TracChangeset
for help on using the changeset viewer.