rmachine

Screenshot Λογισμικό:
rmachine
Στοιχεία Λογισμικού:
Εκδοχή: 0.12
Ανεβάστε ημερομηνία: 3 Jun 15
Προγραμματιστής: Michael Vogt
Άδεια: Δωρεάν
Δημοτικότητα: 36

Rating: 1.0/5 (Total Votes: 1)

rmachine είναι ένας προσομοιωτής μηχάνημα μητρώο (η θεωρία έκδοση πολυπλοκότητας), προγραμματίζονται σε Python, πλήρης, με μια ενότητα που πρέπει να χρησιμοποιηθούν σε προγράμματα σας και (PyQt4) GUI.
Το μηχάνημα («RAM») είναι ίση με μηχανές Turing σε computional εξουσία του. Έχει θεωρητικά απεριόριστη μνήμη (αλλά περιορίζεται στην πράξη από τη μνήμη του υπολογιστή σας).
Αυτό είναι ένας προσομοιωτής για μηχανές μητρώο (η θεωρία της πολυπλοκότητας έκδοση). Εδώ είναι μια σύντομη εισαγωγή.
Το μηχάνημα («RAM») είναι ίση με μηχανές Turing το computional εξουσία του. Έχει θεωρητικά απεριόριστη μνήμη (στην πράξη περιορίζεται από τη μνήμη του υπολογιστή σας). Κύτταρα μνήμης («μητρώα») που μπορεί να αποθηκεύσει ακέραιοι> = 0 οποιουδήποτε μήκους. Πείτε το πέμπτο μητρώο περιέχει τον αριθμό 42. Θα ήθελα να το γράψω ως c (5) = 42. γ (0) ονομάζεται επίσης "συναρμολόγησης" και έχει ένα σημαντικό ρόλο, όπως θα δούμε αργότερα.
Η RAM έχει επίσης ένα μετρητή προγράμματος b, initally ρυθμιστεί σε 1 και ουσιαστικά αντιπροσωπεύει την επόμενη γραμμή που πρόκειται να εκτελεστεί.
Η δομή ενός τυπικού προγράμματος μοιάζει με αυτό:
  # Σχόλια πηγαίνετε εδώ
  # Περισσότερα σχόλια
  Είσοδος 4 6 8 9
  (Οδηγίες πηγαίνετε εδώ)
  ΤΕΛΟΣ
Η γραμμή "ΕΙΣΟΔΟΣ" πρέπει να βρεθεί αμέσως μετά τα σχόλια. Η είσοδος θα τοποθετηθεί στο c (1), C (2) κ.α. Σε αυτό το παράδειγμα, C (1) = 4, C (2) = 6, C (3) = 8, C (4) = 9.
Τώρα, με όλα αυτά, εδώ είναι η εντολή που. Η πρώτη γραμμή είναι η ίδια η διδασκαλία, η δεύτερη γραμμή εξηγεί τι κάνει.
-
ΦΟΡΤΙΟ i
c (0): = C (i), b: = b + 1
-
CLOAD i
c (0): = i, b: = b + 1
-
INDLOAD i
c (0): = C ((i)), b: = b + 1
-
ΚΑΤΑΣΤΗΜΑ
c (i): = C (0), b: = b + 1
-
INDSTORE i
C ((i)): = C (0), b: = b + 1
-
ΠΡΟΣΘΗΚΗ i
c (0): = C (0) + c (i), b: = b + 1
-
CADD i
c (0): = C (0) + i, b: = b + 1
-
INDADD i
c (0): = C (0) + c (c (i)), b: = b + 1
-
SUB i
c (0): = max ((0) c - c (i), 0), b: = b + 1
-
CSUB i
γ (0): = max (C (0) - i, 0), β: = b + 1
-
INDSUB i
c (0): = max (c (0) - C ((i)), 0), b: = b + 1
-
MUL i
c (0): = C (0) * c (i), b: = b + 1
-
CMUL i
γ (0): = c (0) * I, B: = b + 1
-
INDMUL i
c (0): = C (0) * C ((i)), b: = b + 1
-
DIV i
c (0): = C (0) / C (i), b: = b + 1
Σημείωση: Τα δεκαδικά ψηφία θα πρέπει να αποκοπεί
-
CDIV i
c (0): = C (0) / i, b: = b + 1
Σημείωση: Τα δεκαδικά ψηφία θα πρέπει να αποκοπεί
-
INDDIV i
c (0): = C (0) / C ((i)), b: = b + 1
Σημείωση: Τα δεκαδικά ψηφία θα πρέπει να αποκοπεί
-
GOTO i
β: = i
-
Αν το x l GOTO i
Χ μπορεί να είναι ένας από αυτούς:
β: = i, αν (γ (0) Χ l) είναι αληθής
(Περισσότερα ανεπίσημα, "ΕΑΝ <5 GOTO 10" θα οριστεί β = 10, αν c (0)

Απαιτήσεις :

  • Python
  • PyQt4

Σχόλια για rmachine

Τα σχόλια δεν βρέθηκε
προσθήκη σχολίου
Ενεργοποιήστε τις εικόνες!