maszyna cyfrowa

background image

Programowanie w PMC

background image

W prezentacji

Wstęp

Polecenia programu PMC

Dodawanie ciągu n liczb

Silnia liczby n

Szukanie liczb ujemnych w ciągu n
liczb

background image

Wprowadzenie

Nauka programowania komputerów jest zadaniem bardzo
trudnym. Współczesny sprzęt informatyczny ma za sobą długą
drogę rozwoju i osiągnął wysoki stopień komplikacji będący
barierą dla początkujących, którzy chcieliby poznać zasady
programowania w języku bezpośrednio rozumianym przez
procesor, czyli w asemblerze.

Moim celem jest zmniejszenie chaosu oraz złożoności
systemów rzeczywistych i przybliżenie wam Przykładowej
Maszyny Cyfrowej czyli PMC, która ma prostą i zrozumiałą
konstrukcję oraz niewielki zestaw rozkazów.

Dzięki tym cechom będziemy mogli szybko nauczyć się jej
budowy i skoncentrować na samym programowaniu.

background image

Program PMC

Dane

Wejściowe

Wyjściowe

Kod

programu

Licznik rozkazów
B

ędzie nas informował

który krok programu
aktualnie wykonujemy

Rejestr rozkazów

Odpowiedzialny za

przekodowanie kodu

binarnego na

konkretny rozkaz

Przykład: dodaj liczbę

Akumulator

Pamięć podręczna w

której dokonujemy

obliczeń

Wykonuje

program

Uruchomia

program krok po

kroku

Uruchomia program
jako kolejne kroki
procesora

Menu

background image

Polecenia PMC

ZD 27 – polecenie zeruj akumulator i dodaj liczbę z komórki 27

Przykład:

Początek:

Polecenie:

Wynik:

ZD 27

DO 27 – polecenie dodaje do akumulatora liczbę z komórki 27

Przykład:

Początek:

Polecenie:

Wynik:

OD 27

OD 27 – polecenie odejmuje od akumulatora liczbę z komórki 27

MN 27 – polecenie mnoży akumulator przez liczbę z komórki 27

background image

Polecenia PMC

PA 27 – polecenie zeruj wartość komórki 27 i zapamiętuje w niej wartość

akumulatora

Przykład:

Początek:

Polecenie:

Wynik:

PA 27

Uwagi:

Do akumulatora możemy wprowadzać nie tylko liczby ale i polecenia (np. DO 26)

Przeadresowywanie komórek

background image

Polecenia PMC

Instrukcje skoku:

SK 10 – wykonanie tego rozkazu powoduje bezwarunkowy
przeskok wykonywanego programu do komórki o adresie 10

SS 0 – wykonanie tego rozkazu powoduje bezwarunkowy
przeskok wykonywanego programu do komórki o adresie 0 i
zatrzymanie programu

SM 10 – wykonanie tego rozkazu powoduje skok do komórki o
adresie 10 w momencie kiedy wartość akumulatora będzie
ujemna w przeciwnym razie program przejdzie do następnej
komórki

Menu

background image

Dodawanie liczb

Spróbujmy teraz napisać prosty program dodający sześć
liczb

Trzy etapy tworzenia programu:

Stwórz dobry algorytm rozwiązujący problem

Na podstawie algorytmu zaprogramuj maszynę cyfrową

Przetestuj program aby mieć pewność, że działa

prawidłowo

NO TO DO DZIEŁA

background image

Dodawanie n liczb

Rozpoczynamy pracę programu

Wczytujemy ilość liczb oraz ich
wartości
Ustawiamy indeks i = 1 oraz
zerujemy sumę liczb

Dodajemy pierwszą liczbę do sumy

Pytamy program czy dodał już
wszystkie liczby

Jeśli nie to zwiększamy indeks i o 1
aby w następnej pętli programu
dodać kolejną liczbę

Jeśli warunek był spełniony
wypisujemy wynik sumy liczb „s”

Kończymy pracę programu

A

L

G

O

R

Y

T

M

background image

Dodawanie n liczb

P
R
O
G
R
A
M

D
A
N
E

Dodajemy kolejne liczby

Obliczamy liczbę n - i - 1

Sprawdzamy czy jest ona
ujemna, jeśli tak to skaczemy
do komórki 13, jeśli nie to
wykonujemy rozkaz z komórki 7

Zmieniamy i na i + 1

Przeadresowujemy komórkę o 1
aby w kolejnej pętli program dodał
następną liczbę

Zapętlamy program

Wprowadzone liczby: -14, 3, 6, -5, -7,
11, 24

Liczba i
Ilość liczb

Wynik

Pomocnicza jedynka do obliczeń

Menu

background image

Silnia liczby n

Rozpoczynamy pracę programu

Wczytujemy liczbę n

Sprawdzamy czy n nie jest liczbą
ujemną

Za s (wynik silni) podstawiamy i

Pytamy program czy obliczył już
silnię z n

Jeśli nie to zwiększamy indeks i o 1

Jeśli warunek był spełniony
wypisujemy wynik silni liczb n

Kończymy pracę programu

Jeśli nie jest to za zmienną i
przyjmujemy 1

Mnożymy s przez i ponieważ n!
=1*2*…*n, a następnie przechodzimy
do następnej pętli z pytaniem czy już
policzyliśmy silnię

A

L

G

O

R

Y

T

M

background image

Silnia liczby n

P
R
O
G
R
A
M

D
A
N
E

Wczytujemy liczbę n

Sprawdzamy czy jest ona ujemna
jeśli tak to kończymy program
jeśli nie to idziemy do kolejnego
rozkazu

Podstawiamy za wynik liczbę i

Obliczamy liczbę n – i – 1

Zapętlamy program

Liczba i

Liczba z której policzymy silnię

Wynik

Pomocnicza jedynka do obliczeń

Sprawdzamy czy jest ona ujemna
jeśli nie to podstawiamy zamiast
i, i +1, a następnie wynik s
mnożymy przez i

Menu

background image

Obliczanie ile jest liczb

ujemnych w ciągu n

liczb

Rozpoczynamy pracę programu

Wczytujemy liczbę n i liczby od a[1] do
a[n]

Pytamy program czy sprawdziliśmy
już wszystkie liczby

Jeśli nie to sprawdzamy czy i-ta
liczba jest ujemna

Jeśli nie to zwiększamy indeks i o 1

Jeśli warunek był spełniony
wypisujemy wynik silni liczb n

Kończymy pracę programu

Jeśli tak to zwiększamy indeks i o 1 i
doliczamy kolejną liczbę ujemną

A

L

G

O

R

Y

T

M

background image

Obliczanie ile jest liczb

ujemnych w ciągu n

liczb

P
R
O
G
R
A
M

D
A
N
E

Zmniejszamy ilość liczb o jeden

Program pyta czy
sprawdziliśmy już
wszystkie liczby

Zapamiętujemy nową ilość liczb

W czytujemy i-tą liczbę i
sprawdzamy czy jest ona ujemna
Jeśli nie jest ona ujemna to
przeadresowywujemy komórki tak
aby w nowej pętli program badał
następną liczbę

Jeśli tak to zliczmy ilość liczb
ujemnych, przeadresowywujemy
komórki i przechodzimy do
badania następnej liczby

Ilość liczb
Wynik

Pomocnicza jedynka do obliczeń

Wprowadzone liczby: -14, 3, 6, -5, -7,
11, 24

Menu

background image

Podsumowanie

Dziękuję za uwagę


Document Outline


Wyszukiwarka

Podobne podstrony:
Historia maszyn cyfrowych
Bajki robotów O maszynie cyfrowej, co ze smokiem walczyła
Historia maszyn cyfrowych
karta anologowa cyfrowa, Mechanika i Budowa Maszyn PK, Miernictwo cieplne i maszynowe
CW10 Pomiar czestotl met cyfrowa, AGH IMIR Mechanika i budowa maszyn, II ROK, Metrologia Tyka Haduc
Wyścig z maszynami Jak rewolucja cyfrowa napędza innowacje, zwiększa wydajność i w nieodwracalny spo
NOTAKI Z TECHNIKI CYFROWEJ
p 43 ZASADY PROJEKTOWANIA I KSZTAŁTOWANIA FUNDAMENTÓW POD MASZYNY
Technologia Maszyn CAD CAM
Maszynoznawstwo prezentacja multimedialna
Wykład XI Metody opisu układów cyfrowych
czas pracy maszynistówa bezpieczenstwo kolejowe KTS
Cyfrowy system rejestracji obrazu
Maszynoznawstwo+wyklad+2
Ortofotomapa cyfrowa i Numeryczny Model Terenu
Dźwięk cyfrowy plik cyfrowy
ubezpieczenie maszyn od awarii

więcej podobnych podstron