Advertisement
gasolinewaltz

program.cpp

Nov 3rd, 2011
160
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
C++ 1.47 KB | None | 0 0
  1. #include "4241.h"
  2.  
  3. /*
  4. R0            - 4-BIT REGISTER
  5. R1            - 4-BIT REGISTER
  6. <DATA>  - THE VALUE OF THE ADDRESS IN MEMORY AFTER THE TWO-BYTE INSTRUCTION
  7.  
  8.         0     1     2     3
  9.       [   ] [   ] [   ] [   ]
  10. PC `----------^                 - ONE BYTE INSTRUCTION
  11. PC `----------------^       - TWO BYTE INSTRUCTION
  12. --------------------------------------------------------------------------------------------
  13. ONE BYTE INSTRUCTIONS                                           TWO BYTE INSTRUCTIONS
  14. 0 - HAULT (HAULTS PROGRAM)          8   - PRINT <DATA>
  15. 1 - ADD (R0 = R0 + R1)              9   - LOAD VALUE OF ADDRESS <DATA> INT R0
  16. 2 - SUBTRACT (R0 = R0 - R1)         10 - LOAD VALUE OF ADDRESS <DATA> INTO R1
  17. 3 - INCREMENT R0                11 - STORE VALUE R0 INTO ADDRESS <DATA>
  18. 4 - INCREMENT R1                12 - STORE VALUE R1 INTO ADDRESS <DATA>
  19. 5 - DECREMENT R0                13 - JUMP TO ADDRESS <DATA>
  20. 6 - DECREMENT R1                14 - JUMP TO ADDRESS <DATA> IF R0 == 0
  21. 7 - SWAP REGISTERS (R0 <=> R1)          15 - JUMP TO ADDRESS <DATA> IF R0 != 0
  22. --------------------------------------------------------------------------------------------
  23. */
  24. Chip_4241::Chip_4241(){
  25.         pc = 0;
  26.         HAULT = false;
  27.         A.REG, B.REG = 0;
  28.  
  29.         CELL[0].SLOT = 0;
  30.         CELL[1].SLOT = 0;
  31.         CELL[2].SLOT = 0;
  32.         CELL[3].SLOT = 0;
  33.  
  34.         CELL[4].SLOT = 0;
  35.         CELL[5].SLOT = 0;
  36.         CELL[6].SLOT = 0;
  37.         CELL[7].SLOT = 0;
  38.        
  39.         CELL[8].SLOT = 0;
  40.         CELL[9].SLOT = 0;
  41.         CELL[10].SLOT = 0;
  42.         CELL[11].SLOT = 0;
  43.        
  44.         CELL[12].SLOT = 0;
  45.         CELL[13].SLOT = 0;
  46.         CELL[14].SLOT = 0;
  47.         CELL[15].SLOT = 0;
  48. }
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement