Discovery znanje
/ Knowledge Discovery >> Discovery znanje >> tech >> računalnik >> računalniška strojna oprema >>

Kako mikroprocesorji Work

Save registracijo B do pomnilniški naslov
  • Savec mem - Prihranite registrirati C na pomnilniško naslov
  • - Dodajte A in B in shranite Rezultat v C
  • SUB - Odštej A in B in shranite rezultat v C
  • MUL - Pomnožite A in B in shranite rezultat v C
  • DIV - Divide A in B in shranite rezultat v C
  • COM - Primerjajte A in B in shranite rezultat v testu
  • JUMP addr - skok na naslov
  • JEQ addr - Jump, če enaka, obravnavati
  • JNEQ addr - Jump, če ne enako, obravnavati
  • JG addr - skok, če je večji od, za reševanje
  • JGE addr - Jump, če večje ali enako, da se obravnavajo
  • JL addr - skok, če je manj kot, da se obravnavajo
  • JLE Im - skok, če je manjša od ali enaka, za reševanje
  • STOP - izvedba Stop

    Če ste prebrali kako C Programiranje deluje, potem veste, da se bo ta preprost kos oznako C izračunati fakulteto 5 (kjer faktorsko 5 = 5! = 5 * 4 * 3 * 2 * 1 = 120):
    a = 1, f = 1, medtem ko (a < = 5) {f = f * A; a = a + 1;}

    Na koncu izvedbe programa, spremenljivka f vsebuje fakulteto 5.
    zbor Language

    AC prevajalnik prevede to C kodo v zbirnem jeziku. Ob predpostavki, da RAM začne na naslovu 128 v tem procesorju in ROM (ki vsebuje sklop jezik programa), se začne na naslovu 0, nato pa še za našega preprostega mikroprocesorja lahko skupščina jezik izgleda takole:
    //Predpostavimo, je na naslovu 128 //Predpostavimo F je na naslovu 1290 CONB 1 //a = 1; 1 SAVEB 1282 CONB 1 //f = 1; 3 SAVEB 1294 LOADA 128 //če a > 5 skok na 175 CONB 56 COM7 JG 178 LOADA 129 //f = f * A; 9 LOADB 12.810 MUL11 Savec 12.912 LOADA 128 //a = a + 1; 13 CONB 114 ADD15 Savec 12816 JUMP 4 //zanka nazaj if17 STOP ROM

    Torej, zdaj vprašanje je, " Kako vsa ta navodila poglejte v ROM? " Vsaka od teh sestav jezikovnih navodili mora zastopati binarno število. Zaradi enostavnosti predpostavimo vsak sklop jezikovni pouk se daje edinstveno številko, kot je ta:

  • LOADA - 1
  • LOADB - 2
  • CONB - 3
  • SAVEB - 4
  • Savec mem - 5
  • ADD - 6
  • SUB - 7
  • Mul - 8
  • DIV - 9
  • COM - 10
  • JUMP addr - 11
  • JEQ addr - 12
  • JNEQ addr - 13
  • JG addr - 14
  • JGE addr - 15
  • JL addr - 16
  • JLE addr - 17
  • STOP - 18

    Številke so znane kot opcodes. V ROM, bi naš mali program, izgleda takole:
    //Predpostavimo, je na nasl

    Page [1] [2] [3] [4] [5] [6] [7] [8] [9]