Bilgi Keşfi
/ Knowledge Discovery >> Bilgi Keşfi >> teknoloji >> bilgisayar >> bilgisayar donanımı >>

Nasıl Mikroişlemciler çalışmak

Bu sayfayı okumak için kullanmakta olduğunuz bilgisayar işini yapmak için bir mikroişlemci kullanır Nasıl Mikroişlemciler Mikroişlemciler Work

  • JEQ addr atla - Jump, eğer eşit,
    adrese
  • JNEQ addr - Jump, daha büyük ise,
  • JGE addr adres - - eğer, Jump, eşit değilse,
  • JG addr adres daha az ise
  • JLE addr adres, Jump - - eşit veya daha büyük,
  • JL addr adres atla, eşit veya daha az hitap eğer
  • DUR - C Programlama Nasıl Çalışır Dur yürütme

    okudum, o zaman C kodu bu basit parça 5 faktoriyelini (hesaplar biliyorum nerede 5 = 5 faktöryel! = 5 * 4 * 3 * 2 * 1 = 120): a = 1
    f = 1; da (bir Cs-= 5) {f = * a f; a = a + 1;}

    Programın yürütülmesi sonunda değişken f 5.
    Assembly Dili

    ​​AC derleyici faktoriyelini içeren birleştirici dili içine bu C kodu çevirir. 0 adresinde RAM (Assembly dili programı içerir) Bu işlemci, ve ROM'da adresinde 128 de başlar başlar varsayarsak, o zaman bizim basit mikroişlemci için Assembly dili bu gibi görünebilir:
    //Bir adrese 128 olan varsayın //varsayalım F adresi 1290 de CONB 1 //a = 1; 1 SAVEB 1282 CONB 1 //f = 1; 3 SAVEB 1294 LOADA 128 //halinde bir şekilde hidrojen; 175 CONB 56 COM7 JG 178 LOADA 129 //f = f 5 atlama * a; 9 LOADB 12810 MUL11 SAVEC 12912 LOADA 128 //a = a + 1; 13 CONB 114 ADD15 SAVEC 12816 JUMP 4 //döngü geri if17 için DUR ROM

    Şimdi yüzden soru, " bu talimatların her şeyi nasıl ROM'da bakmak " Bu assembly dili talimatları birer ikili sayı ile temsil edilmelidir. Basitlik açısından, bu gibi özel bir numara verilir birbirlerinin derleme dil eğitimi varsayalım:

  • LOADA - 1
  • LOADB - 2
  • CONB - 3
  • SAVEB - 4
  • SAVEC mem - 5
  • ADD - 6
  • ALT - 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
  • DUR - 18

    numaralar opcodes olarak bilinir. ROM içinde, bizim küçük bir program şu şekilde görünecektir:
    //Bir adrese 128 at //varsayın F adresi 129Addr opcode /value0 olan 3 //CONB 11 12 4 //SAVEB 1283 1284 3 //CONB 15 olduğunu varsayalım 16 4 //SAVEB 1297 1298 1 //LOADA 1289 12810 3 //CONB 511 512 10 //COM13 14 //JG 1714 3115 1 //LOADA 12916 12917 2 //LOADB 12818 12819 8 //MUL20 5 //SAVEC 12921 12922 1 //LOADA 12823 12824 3 //CONB 125 126 6 //ADD27 5 //SAVEC 12.828 12.829 11 //JUMP 430 831 18 //DUR

    C kodu yedi satır toplanma 18 satırları haline geldiğini görebilirsiniz dil, ve bu ROM'da 32 byte oldu. Çözme

    talimat

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