Návrh procesoru: Porovnání verzí

Z ZděchovNET
Skočit na navigaci Skočit na vyhledávání
Bez shrnutí editace
Bez shrnutí editace
Řádek 1: Řádek 1:
=Paradigma=
=Paradigma=


* absolutní ~ relativní
* Adresování: absolutní ~ relativní
* statické ~ dynamické
* statické ~ dynamické
* omezené ~ neomezené
* Datové rozsahy: omezené ~ neomezené
* jednoúrovňové ~ víceúrovňové
* jednoúrovňové ~ víceúrovňové
* Operace: atomické ~ neatomické
* Délka instrukce: jedna pevná ~ různá
* Typy parametrů instrukcí
* Typy parametrů instrukcí
** Registry
** Registry
Řádek 16: Řádek 18:
** Registry
** Registry
** Zásobník
** Zásobník

=Datové typy=
* Bit
* Přirozené číslo (UINT)
* Celé číslo (INT)
* Desetinné číslo (FLOAT)


=Obecné skupiny instrukcí=
=Obecné skupiny instrukcí=


* Aritmetické instrukce
* Aritmetické instrukce
** Přičtení (ADD, ADC)
** Součet (ADD, ADC)
** Odečtení (SUB, SBC)
** Rozdíl (SUB, SBC)
** Násobení (MUL)
** Násobení (MUL)
** Dělení (DIV, MOD)
** Dělení (DIV, MOD)
Řádek 55: Řádek 63:
** Prohození (XCH, XCHG)
** Prohození (XCH, XCHG)
** Porovnání (CP, CMP, TST, TEST)
** Porovnání (CP, CMP, TST, TEST)
** Převrácení pořadí bajtů (SWAP)
* Obecné
* Obecné
** Žádná operace (NOP)
** Žádná operace (NOP)
** Konec programu (HALT)
** Prefixové
** Prefixové
* Speciální
* Speciální
Řádek 62: Řádek 72:
** Zakázání globálního přerušení (DI)
** Zakázání globálního přerušení (DI)
** Výměna registrových bank (EXX)
** Výměna registrových bank (EXX)

=Existující návrhy=
* [https://www.google.com/url?sa=t&rct=j&q=&esrc=s&source=web&cd=1&cad=rja&uact=8&ved=2ahUKEwijtIj24JHdAhWJAXwKHRiuAvIQFjAAegQIARAC&url=https%3A%2F%2Fpdfs.semanticscholar.org%2F5d36%2Fcef65e012211005fef8dec22c5f60c8295e8.pdf&usg=AOvVaw3tFCcrTtBwsgaZjyG7Rp88 Introduction to the CRISP Instruction Set Architecture]


[[Kategorie:Programování]]
[[Kategorie:Programování]]

Verze z 29. 8. 2018, 09:57

Paradigma

  • Adresování: absolutní ~ relativní
  • statické ~ dynamické
  • Datové rozsahy: omezené ~ neomezené
  • jednoúrovňové ~ víceúrovňové
  • Operace: atomické ~ neatomické
  • Délka instrukce: jedna pevná ~ různá
  • Typy parametrů instrukcí
    • Registry
    • Akumulátor
    • Zásobník
    • Parametry
  • Paměťové oblasti
    • Operační paměť RAM
    • Paměť programu
    • Periferie I/O
    • Registry
    • Zásobník

Datové typy

  • Bit
  • Přirozené číslo (UINT)
  • Celé číslo (INT)
  • Desetinné číslo (FLOAT)

Obecné skupiny instrukcí

  • Aritmetické instrukce
    • Součet (ADD, ADC)
    • Rozdíl (SUB, SBC)
    • Násobení (MUL)
    • Dělení (DIV, MOD)
  • Bitové
    • Nastavení (SET)
    • Nulování (CLR, RES)
    • Převrácení (NEG, INV)
    • Testování (TEST)
  • Posuny
    • Posun vlevo (SHL)
    • Posun vpravo (SHR)
    • Rotace vlevo (RL)
    • Rotace vpravo (RR)
  • Řízení běhu
    • Skok (JP, JMP, JR, DJNZ)
    • Volání ruitny (CALL)
    • Návrat z rutiny (RET, RETI)
    • Přerušení (INT, RST)
    • Zastavení běhu (HLT, HALT, STOP)
  • Bitové logické
    • Logický součin (AND, ANL)
    • Logická součet (OR, ORL)
    • Logická nonekvivalence (XOR, XRL)
    • Převrácení (NOT)
  • Zásobníkové
    • Vložení na vrchol (PUSH)
    • Vytažení z vrcholu (POP)
  • Vstupně výstupní
    • Zápis na výstup (OUT)
    • Čtení ze vstupu (IN, INP)
  • Bajtové
    • Kopie (LD, MOV, COPY)
    • Prohození (XCH, XCHG)
    • Porovnání (CP, CMP, TST, TEST)
    • Převrácení pořadí bajtů (SWAP)
  • Obecné
    • Žádná operace (NOP)
    • Konec programu (HALT)
    • Prefixové
  • Speciální
    • Povolení globálního přerušení (EI)
    • Zakázání globálního přerušení (DI)
    • Výměna registrových bank (EXX)

Existující návrhy