IJP c.d.

0

W związku z niesamowitą liczbą próśb :P kontynuuję wątek z
http://www.4programmers.net/f[...]ion=show&id=22934&c=2

Bardzo ogólny plan:

v I. Nazewnictwo identyfikatorów.
v II. Komentarze.
v III. Elementy rozdzielające.
v IV. Budowa programu (modułów).
v V. Bloki
v VI. Deklaracja modułów.
v VII. Formaty liczb.
v VIII. Łańcuchy znaków.
v IX. "Nalepki"
v X. Typy:
v 1. Predefiniowane typy:
v A. Proste:
v a. Porządkowe:
v - całkowite
v - znakowe
v - boolowskie
v - wyliczeniowe
v - okrojone
v b. Rzeczywiste
v B. Łańcuchowe
v C. Strukturalne
v a. Zbiory
v b. Tablice
v c. Rekordy
v d. Pliki
v e. Klasy
v D. Wskaźnikowe
E. Proceduralne
G. Inne

  1. Typy podobne i przyporządkowanie.
  2. Definicja typów.
  3. Deklaracja zmiennych.
  4. Definicja stałych.
    XI. Operatory:
  5. Arytmetyczne,
  6. Bitowe,
  7. Logiczne,
  8. Łańcuchów znaków,
  9. Referencyjne (wskaźnikowe),
  10. Operacji na zbiorach,
  11. Porównania,
  12. Operacji na klasach,
  13. Przyporządkowania.
  14. Inne.
    XII. Instrukcje:
  15. Porównania / wybierania.
  16. Iteracji.
  17. Skoku.
    XIII. Funkcje.

Można modyfikować plan i poruszać wcześniejsze punkty. (ale wolałby, żeby zbytnio nie wyprzedzać planu, aby zachować jako taki porządek)

E. Proceduralne
type F = function(Parametry, Funkcji): WartoscZwracana;
Czyli w rzeczywistości wskaźniki do funkcji.
Jeżeli jednak funkcja jest metodą jakiejś klasy to trzeba użyć:
type F = function(Parametry, Funkcji): WartoscZwracana of object;
Te już nie mogą być jak zwykłe wskaźniki :(
--Jest jeszcze jeden błąd ... :)

Apel: Piszcie w tematach o jaki język programowania chodzi np. : [Delphi], [C++], itp.

0

A tak skoro już jesteśmy przy funkcjach, to od razu zacznę punkt G. Inne.
Chodzi o predefinowany typ (a raczej wartość) NULL. Analogicznie jak w C++
Jeżeli jest wymagana liczba to NULL przyjmuje wartość 0, jeżeli wskaźnik to NULL jest odpowiednikiem nil, jeżeli funkcja ma nie zwracać wartości (w C++ void) to tutaj też dajemy NULL. Po prostu NULL to nic ;) (jeszcze trochę się zapędzę i dorzucię NULL do operacji logicznych i będę miał non-sense logic :D )--Jest jeszcze jeden błąd ... :)

Apel: Piszcie w tematach o jaki język programowania chodzi np. : [Delphi], [C++], itp.

0

Jak NULL to dla mnie null z małych liter :). A co do logiki to ciekawy pomysł. Byłby to pierwszy język obsługujący logikę 3wartościową:

tak - true
nie - false
nie wiem - null--Vogel [Delphi 6 PE]

Life is just a dream, you know...
[Cowboy Bebop]

0

Vogel napisał:
Jak NULL to dla mnie null z małych liter :). A co do logiki to ciekawy pomysł. Byłby to pierwszy język obsługujący logikę 3wartościową:
&gt
&gttak - true
&gtnie - false
&gtnie wiem - null
&gt
zapewne powiadam wam ze nie byl by to pierwszy jezyk obslugujacy logike wielowartosciowa :-)

np w vhdl'u mozesz sam sobie ustalic jaka logike wykorzystujesz - standard to logika 9 wartosciowa a mozna stosowac logike 41 wartosciowa ale to juz wyzsza szkola jazdy

pozdrawiam
wojta$--Lets make linux better :-)

0

tak trochę poza tematem to chciałbym poinformować, że pan wojta$ coraz bardziej imponuje mi swoją wiedzą na temat programowania :)

może by pan napisał jakiś artykulik do serwisu? z tego co się orientuje (czytając pana posty) to na pewno mogłoby to być coś o Javie albo C++

ps. sorki za te pan ale jakoś nie wiem jak mam pisać ;)---=-=[ Delphi 3, 6 ]=-=-
-=-=-==[ LKS ]==-=-=-
-=[ [email protected] ]=-

0

wojta$ napisał:
zapewne powiadam wam ze nie byl by to pierwszy jezyk obslugujacy logike wielowartosciowa :-)

np w vhdl'u mozesz sam sobie ustalic jaka logike wykorzystujesz - standard to logika 9 wartosciowa a mozna stosowac logike 41 wartosciowa ale to juz wyzsza szkola jazdy

Jest pewna różnica pomiędzy logiką wielowartościową, a systemami nonsense-logic (choć jak dla mnie możnaby podciągnąć jedno pod drugie). W systemach nonsense-logic są tylko 3 wartości (prawda, fałsz i bezsens/nieokreślność). W systemach wielowartościowych rzeczywiście może tego być więcej.
Ale nie to jest tu istotne. Przy systemach nieklasycznych to można się pogubić. Co prawda logika wielowartościowa mogłaby być świetnym podkładem pod algorytmy symulujące sztuczną inteligencję, ale to samo można zrobić w klasycznej (komputer operuje tylko na dwóch wartościach i my przy tym zostańmy)

A co do tego małymi literami i jako słowo kluczowe to zgadzam się całkowicie :)--Jest jeszcze jeden błąd ... :)

Apel: Piszcie w tematach o jaki język programowania chodzi np. : [Delphi], [C++], itp.

0

Dryobates napisał:
wojta$ napisał:
&gtzapewne powiadam wam ze nie byl by to pierwszy jezyk obslugujacy logike wielowartosciowa :-)
&gt
&gtnp w vhdl'u mozesz sam sobie ustalic jaka logike wykorzystujesz - standard to logika 9 wartosciowa a mozna stosowac logike 41 wartosciowa ale to juz wyzsza szkola jazdy
&gt
&gtJest pewna różnica pomiędzy logiką wielowartościową, a systemami nonsense-logic (choć jak dla mnie możnaby podciągnąć jedno pod drugie). W systemach nonsense-logic są tylko 3 wartości (prawda, fałsz i bezsens/nieokreślność). W systemach wielowartościowych rzeczywiście może tego być więcej.
&gtAle nie to jest tu istotne. Przy systemach nieklasycznych to można się pogubić. Co prawda logika wielowartościowa mogłaby być świetnym podkładem pod algorytmy symulujące sztuczną inteligencję, ale to samo można zrobić w klasycznej (komputer operuje tylko na dwóch wartościach i my przy tym zostańmy)
&gt
&gtA co do tego małymi literami i jako słowo kluczowe to zgadzam się całkowicie :)
&gt
nie zgodze sie z tym ze komputer "operuje" logika dwuwartosciowa - jezeli myslisz tylko o programowaniu to masz racje ale piszac "operuje" mylisz sie bo patrzac od strony elektroniki komputer operuje logika 9 wartosciowa

0
1
slabe 0
slabe 1
wielka impedancja
zmiana z ona 1
zmiana z 1 na 0
stan nieokreslony
i dziewiatego nie pamietam :-)

pozdrawiam
wojta$--Lets make linux better :-)

0

wojta$ napisał:
nie zgodze sie z tym ze komputer "operuje" logika dwuwartosciowa - jezeli myslisz tylko o programowaniu to masz racje ale piszac "operuje" mylisz sie bo patrzac od strony elektroniki komputer operuje logika 9 wartosciowa

Aj, ugryzłem się w język. Ale trzeba się pilnować przy wyrażaniu myśli. Efektywnie możemy (programując) wykorzystać tylko dwie wartości (chyba, że jest jakaś inna możliwość). Jednak dalej jestem za pozostawieniem klasycznej logiki. Ciekawe jak wyglądałaby instrukcja if :D
wojta$ może opowiesz o tym vhdl (albo jakiś link)--Jest jeszcze jeden błąd ... :)

Apel: Piszcie w tematach o jaki język programowania chodzi np. : [Delphi], [C++], itp.

0

Ciekawe jak wyglądałaby instrukcja if :D
&gtwojta$ może opowiesz o tym vhdl (albo jakiś link)
&gt

VHDL

Very High Hardware Description Language
nazwa mowi sama za siebie

instrukcja if - instrukcja sekwencyjna (w vhda wystepoje cala gama instrukcji rownoleglych tzn nie jest wazne w jakim miejscu uzyjesz jakiejs tam funkcji rown. a ona zawsze zadziala prawidlowo i kiedy trzeba - w konco w elektronice wszystkie moduly musza dzialac rownolegle quasi niezaleznie)

np. instrukcja IF

deklaracja jednostki :

entity IF_STATEMENT is
port (A, B, C, X : in bit_vector (3 downto 0);
Z : out bit_vector (3 downto 0);
end IF_STATEMENT;

deklaracje architektury

architecture EXAMPLE1 of IF_STATEMENT is
begin
process (A, B, C, X)
begin
Z &lt= A;
if (X = "1111") then
Z &lt= B;
elsif (X &gt "1000") then
Z &lt= C;
end if;
end process;
end EXAMPLE1;

dobry link to :
http://www.vhdl-online.de/~vhdl/tutorial/

pozdrawiam wojta$--Lets make linux better :-)

0

male poprawki VHDL oznacza
Very High Speed Integrated Circuit Hardware Description Language

windoz mi zjadl kawalek zdania :-)

no i w kodzioe zrodlowym pojawily sie jakies beczace gemby tego
oczywiscie nie ma w kodzie VHDL :-)
zamiast tych ryczacych ryjow powinien byc nawias (

pozdrawiam
wojta$--Lets make linux better :-)

1 użytkowników online, w tym zalogowanych: 0, gości: 1, botów: 0