User Tools

Site Tools


tutorials:assemblers

Differences

This shows you the differences between two versions of the page.

Link to this comparison view

Both sides previous revision Previous revision
Next revision
Previous revision
tutorials:assemblers [2022/03/14 02:39]
sm5por [Data types]
tutorials:assemblers [2023/09/23 22:22] (current)
sm5por [Instructions]
Line 50: Line 50:
 ^  Word  ^ ^ ^ ^ ^ ^ ^ ^ ^ ^ ^1^1^1^1^1^1^1^1^1^1^2^2^2^2^2^2^2^2^2^2^3^3^3^3^3^3^ ^  Word  ^ ^ ^ ^ ^ ^ ^ ^ ^ ^ ^1^1^1^1^1^1^1^1^1^1^2^2^2^2^2^2^2^2^2^2^3^3^3^3^3^3^
 ^:::     ^0^1^2^3^4^5^6^7^8^9^0^1^2^3^4^5^6^7^8^9^0^1^2^3^4^5^6^7^8^9^0^1^2^3^4^5^ ^:::     ^0^1^2^3^4^5^6^7^8^9^0^1^2^3^4^5^6^7^8^9^0^1^2^3^4^5^6^7^8^9^0^1^2^3^4^5^
-|Byte pointer Position  ||||||  Size  ||||||0|  I  |  X  ||||  Y  |||||||||||||||||| +|Address | |||||||||||||  I  |  X  ||||  Y  ||||||||||||||||||
-|Basic instruction|  Basic opcode  |||||||||  AC  ||||  I  |  X  ||||  Y  |||||||||||||||||| +
-|I/O instruction|  7  |||  Device  |||||||  I/O opcode  |||  I  |  X  ||||  Y  |||||||||||||||||| +
-|PC word|  Flags  |||||||||||||  0  |||||  PC  ||||||||||||||||||+
  
 ^   Field    ^  Size  ^  Position  ^  Interpretation                          ^ ^   Field    ^  Size  ^  Position  ^  Interpretation                          ^
-|Position    |       6|    0--5    |First (most significant) bit of byte field| 
-|Size        |       6|    6--11   |Number of consecutive bits in byte field  | 
 |I                 1|     13     |Indirect bit                              | |I                 1|     13     |Indirect bit                              |
 |X                 4|   14--17   |Index register                            | |X                 4|   14--17   |Index register                            |
 |Y                18|   18--35   |Memory address                            | |Y                18|   18--35   |Memory address                            |
-|Basic opcode|       9|    0--8    |See basic instruction set                 |+ 
 +=== Extended addressing === 
 + 
 +=== Byte pointers === 
 + 
 +^  Word  ^ ^ ^ ^ ^ ^ ^ ^ ^ ^ ^1^1^1^1^1^1^1^1^1^1^2^2^2^2^2^2^2^2^2^2^3^3^3^3^3^3^ 
 +^:::     ^0^1^2^3^4^5^6^7^8^9^0^1^2^3^4^5^6^7^8^9^0^1^2^3^4^5^6^7^8^9^0^1^2^3^4^5^ 
 +|Byte pointer|  Position  ||||||  Size  ||||||0|  I  |  X  ||||  Y  |||||||||||||||||| 
 + 
 +^   Field    ^  Size  ^  Position  ^  Interpretation                          ^ 
 +|Position    |       6|    0--5    |First (most significant) bit of byte field| 
 +|Size        |       6|    6--11   |Number of consecutive bits in byte field  | 
 + 
 +==== Instructions ==== 
 + 
 +^  Word  ^ ^ ^ ^ ^ ^ ^ ^ ^ ^ ^1^1^1^1^1^1^1^1^1^1^2^2^2^2^2^2^2^2^2^2^3^3^3^3^3^3^ 
 +^:::     ^0^1^2^3^4^5^6^7^8^9^0^1^2^3^4^5^6^7^8^9^0^1^2^3^4^5^6^7^8^9^0^1^2^3^4^5^ 
 +|PC word|  Flags  |||||||||||||  0  |||||  PC  |||||||||||||||||| 
 +|Basic instruction|  Basic opcode  |||||||||  AC  ||||  I  |  X  ||||  Y  |||||||||||||||||| 
 +|I/O instruction|  7  |||  Device  |||||||  I/O opcode  |||  I  |  X  ||||  Y  |||||||||||||||||| 
 + 
 +^   Field    ^  Size  ^  Position  ^  Interpretation                          ^ 
 +|Flags            13|    0--12   |See //Processor status flags//            | 
 +|PC          |      18|   18--35   |Program counter                           | 
 +|Basic opcode|       9|    0--8    |See //Basic instruction set//             |
 |AC          |       4|    9--12   |Accumulator to be used                    | |AC          |       4|    9--12   |Accumulator to be used                    |
 |Device      |       7|    3--9    |Input/output device unit                  | |Device      |       7|    3--9    |Input/output device unit                  |
-|I/O opcode  |       3|   10--12   |See input/output instruction set          | +|I/O opcode  |       3|   10--12   |See //Input/output instruction set//      |
-|Flags            13|    0--12   |See processor status flags                | +
-|PC          |      18|   18--35   |Program counter                           | +
- +
-==== Extended addressing ====+
  
-==== Processor status flags ====+=== Processor status flags ===
  
 ^  Bit  ^       Flag        ^  Function  ^ ^  Bit  ^       Flag        ^  Function  ^
Line 83: Line 98:
 |     12|No divide          |            | |     12|No divide          |            |
  
-==== Basic instruction set ====+=== Basic instruction set ===
  
-==== Input/output instruction set ====+=== Input/output instruction set ===
  
-//**Note:** I/O instructions are not available when the processor is in user mode, but can be executed only by the operating system kernel in system (privileged) mode. They are thus of limited interest to regular application programmers under most operating systems.//+//**Note:** I/O instructions are not available when the processor is in user mode, but can be executed only by the operating system kernel in system (privileged) mode. They are also specific to the I/O hardware architecture of the each processor's brand and model (DEC KA/KI/KL, DEC KS, SC, XKL). They are thus of limited interest to regular application programmers under most operating systems.//
  
 ==== Interrupt system ==== ==== Interrupt system ====
Line 95: Line 110:
 ==== Processor models ==== ==== Processor models ====
  
-^  Processor  ^  Includes  ^  Memory size  ^  I/O   ^Front end^         Operating systems          ^^^^ +^  Processor  ^  Includes  ^  Memory size   Sections   I/O   Front end   Software  ^^^^ 
-^:::          ^:::         ^:::            ^:::     ^:::      ^ Tops-10 ^   ITS   ^  TENEX  ^ TOPS-20 ^ +^:::       ^:::       ^:::          ^:::   ^:::            ^:::      ^ Tops-10 ^  ITS  TENEX ^ TOPS-20 ^ 
-|DEC KA10                  8--256 KW                                          |   ---   +|DEC KA10              8--256 KW|     1              |Console                       |   ---  
-|DEC KI10                                                                     |   ---   +|DEC KI10             ?--4096 KW    1              |Console                       |   ---  
-|DEC KL10 A   |FlPt                             |Console                                 +|DEC KL10 A|DW, FP     32--4096 KW    1|               |Console                             
-|DEC KL10 B   |FlPtExtA                |MASSBUS?|PDP-11/??                        |  ?--7   +|DEC KL10 B|DWFP, EA|  32--4096 KW   32|4 DTE20, 8 RH20|PDP-11/??                     |  ?--7  
-|DEC KS10     |FlPt                      |        |                                 |  ?--5   +|DEC KS10  |DW, FP    |  128--512 KW|     1|               |Console? |        |        |        |  ?--5  | 
-|XKL Toad     |FlPtExtA    256 MW (?)         |                                 |  ?--7   |+|SC-40     |DW, FP, EA|     4--64 MW|  4096|1 dual SX, 1 EX|SPARC    |        |        |        |  ?--7  
 +|XKL Toad-1|DWFP, EA|     ?--32 MW|  4096              |                |        |        |  ?--7  | 
 +|XKL Toad-2|DW, FP, EA|    ?--256 MW 4096              |                              |  ?--7  |
  
-|FlPt  |Floating point operations +|DW  |Double word operations     | 
-|ExtA  |Extended addressing        |+|FP  |Floating point operations 
 +|EA  |Extended addressing        |
  
-==== Emulators ====+=== Emulators ===
  
-  KLH10 +^  Emulator  ^  Version  ^  Mode  ^  Includes  ^  Memory  ^  Sections  ^  Peripheral API  ^  Software  ^^^^ 
-  SIMH+^:::  ^::: ^:::   ^:::       ^:::      ^:::   ^::: ^ Tops-10 ^  ITS    TENEX ^ TOPS-20 ^ 
 +|KLH10|2.01|KL    |DW, FP, EA|  4096 KW|    32|    |                |        |  ?--7   | 
 +|KLH10|2.01|KS    |DW, FP    |              |    |                |        |  ?--?   | 
 +|KLH10|2.01|KS ITS|DW, FP    |              |    |                |        |         | 
 +|SIMH |    |KL    |DW, FP, EA|              |    |                |        |  ?--7   |
  
 ===== Operating system details ===== ===== Operating system details =====
tutorials/assemblers.1647225550.txt.gz · Last modified: 2022/03/14 02:39 by sm5por