Simulator för programräknare
Använd etiketter som loop:, sekventiella instruktioner som LOAD eller ADD, förgreningar som BR label eller BR +8, plus JMP, CALL, RET och HALT.
Den här undervisningssimulatorn tilldelar en adress till varje icke-tom instruktionsrad och följer en förenklad programräknare (PC). Den räknar inte kodrader, satser eller tokens och kompilerar eller kör inget programmeringsspråk.
Så följer du en lista
-
1
Ange en kort lista
Använd en instruktion med fast bredd per rad och valfria ASCII-etiketter som loop:.
-
2
Välj adressmodell
Ange startadress, storlek 1, 2, 4 eller 8 byte, bredd 16/24/32 bitar och visningsformat.
-
3
Ställ in spårningen
Behandla globalt alla kända grenar som tagna eller inte tagna, välj 1–80 steg och granska övergångarna.
Modellen som stöds
| Listpost | Beteende |
|---|---|
Annan opcode, som LOAD eller ADD |
Gå vidare med vald fast instruktionsstorlek |
BR, BRA, BRANCH, BEQ, BNE, BGT, BGE, BLT, BLE, BZ, BNZ, JZ, JNZ |
Använd det globala valet tagen/inte tagen |
JMP, JUMP, GOTO |
Hoppa till etikett eller numeriskt mål |
CALL, JSR, BL / RET, RETURN |
Lägg till / ta bort en simulerad returadress |
HALT, HLT, STOP |
Stanna på aktuell PC |
Mål kan vara ASCII-etiketter, decimaladresser eller hexadresser med 0x. Ett teckenförsett mål som +8 är relativt nästa sekventiella PC; ett tal utan tecken är absolut. Adresser rullar runt inom vald bitbredd. // och ; inleder kommentarer. Operander visas bara.
Gränser och integritet
- Inmatningen kapas vid 1 800 tecken och parsningen slutar efter 200 instruktioner.
- Spåret omfattar 1–80 steg; alla villkorliga grenar delar ett globalt val.
- Register, minne, flaggor, pipelines, delay slots, kodning och variabla instruktionslängder emuleras inte.
- Standardläget skickar listan till webbplatsen via servern; stegläget lägger den även i URL:en. Klistra inte in konfidentiell kod.
Vanliga frågor
Nej. Det adresserar instruktionsrader och följer PC; källrader, satser och tokens räknas inte.
Nej. Det känner igen en liten generell uppsättning styr-opcodes. Övriga går bara vidare och operander körs inte.
Offseten läggs till nästa sekventiella PC. Från 0x1000 med 4-byte-instruktioner blir målet 0x100C.
Den skickas till webbplatsen för server-rendering och hamnar i URL:en i stegläget. Inget externt analys-API används, men undvik konfidentiell kod.
Relaterade verktyg
ASCII-tabellreferens
Full ASCII-tabell från 0 till 127 med decimal-, hex-, oktal- och binärvärden samt notation för numeriska HTML-referenser, inklusive NUL, LF och DEL.
HTML-teckenreferens
En sökbar lista över HTML-entiteter med deras namngivna och numeriska koder samt kopiering med ett klick för specialtecken och symboler.
Referens för kortkommandon
Sök dokumenterade standardkommandon för VS Code, Chrome och Bash med GNU Readline i macOS, Windows och Linux.
Färgpalettgenerator
Skapa monokromatiska, analoga, komplementära, triadiska eller tetradiska färgpaletter från en HEX-basfärg och exportera kopieringsklara CSS-variabler.
Slumpgenerator för bokstäver
Generera slumpade A-Z-bokstäver. Välj antal, versaler, gemener eller blandat läge och använd resultatet för spel, uppgifter eller klassrumsaktiviteter.
HTML-formaterare
Formatera HTML lokalt i webbläsaren med indrag på två eller fyra blanksteg. HTML laddas inte upp eller valideras.
Verktyget finns på andra språk
- 프로그램 카운터 시뮬레이터 [KO]
- Trình mô phỏng bộ đếm chương trình [VI]
- Programmatellersimulator [NL]
- 程序计数器模拟器 [ZH]
- Programmzähler-Simulator [DE]
- Program Counter Simulator [EN]
- Simulator program counter [ID]
- Symulator licznika rozkazów [PL]
- محاكي عدّاد البرنامج [AR]
- เครื่องจำลองตัวนับโปรแกรม [TH]
- Simulador del contador de programa [ES]
- Simulateur de compteur de programme [FR]
- Simulador de contador de programa [PT]
- プログラムカウンターシミュレーター [JA]
- Program sayacı simülatörü [TR]
- Simulatore del program counter [IT]
- Симулятор счётчика команд [RU]