english version while1 - stránky o programování

Obsah programu

Popis

Obsah zdrojového programu odpovídá výrazovým možnostem jazyka. I z tohoto důvodu se C++ pro svou bohatost těší tak velké oblibě.

Vývojový diagram

Bloky popisující činnost a hrany udávající tok řízení (cestu postupného provádění).

Přirozený jazyk

Věty složené ze slov. Slova složená z abecedy. Grafické znaky (interpunkce...).

JSA

Symbolická jména

Symbolická jména instrukcí, registrů a adres. Každé jméno instrukce odpovídá právě jedné strojové instrukci. Jméno registru (eax,ax,al...) odpovídá číslu registru. Jméno adresy (návěští) bude přeloženo na číslo paměťové adresy (od začátku segmentu).

Tvar symbolické instrukce
[návěští:] [instrukce <operandy>] [; komentář]
návěští
Identifikátor reprezentující adresu první slabiky instrukce. Identifikátory jsou case-sensitive (malá a velká písmena jsou rozlišena, tj. loop: vs. Loop: jsou dva různé ident.).
komentář
; Komentář do konce řádku.

Operandy

Většina instrukcí pracuje s operandy. Ty mohou být registrové (ax) používající hodnotu registru, paměťové ([bp+6]) odkazující na adresu paměti od začátku segmentu (bp), přímé (0x10) se přeložením stanou součástí instrukce nebo implicitní(inc ax: navýšení ax o 1, kterou nezadáváme).

Direktivy (NASM)

Direktivy slouží pouze k ovládání překladače (NASM) a ve strojovém kódu nemají svůj ekvivalent.

Pascal

Abeceda

Abecedu jazyka Pascal tvoří:

  1. písmena latinské abecedy
  2. číslice 0..9
  3. speciální symboly, operátory, závorky a vyhrazená slova.

Lexikální jednotky

  1. identifikátory - jméno proměnné začínající písmenem (pro odlišení od čísel), které následuje posloupnost písmen a číslic. Velká a malá písmena se NErozlišují (není case-sensitive). Před použitím musí být deklarovány (var).
  2. čísla - konstanty celočíselné nebo reálné
  3. návěští - označení řádku pro skok goto
  4. řetězce znaků - 'posloupnost znaků uzavřená v apostrofech'
  5. komentáře - podle standartu jazyka buď pouze {komentář} nebo i //komentář do konce řádku
  6. direktivy - {$volba+} pro zapnutí a {$volba-} pro vypnutí

Program

Program tvoří hlavička, část definicí + deklarací, a příkazová část. Definice funkcí a procedur tvoří nový blok a obsahují tak vnořenou (lokální) část definicí + deklarací a příkazovou část.

  1. hlavička - program jmeno_programu;
  2. deklarace a definice - deklarace návěští(label), konstant(const), typu(type), proměnných(var), procedur(procedure) a funkcí (function). Definice procedury nebo funkce tvoří nový blok lokálních(deklarací a definic) a příkazů.
  3. příkazová část - sekvence příkazů mezi begin end; (begin end. pro hlavní blok). Blok tvoří společně část programu 2. a 3.

C/C++

Lexikální jednotky

  1. identifikátory - jméno začínající písmenem (pro odlišení od čísel), které následuje posloupnost písmen a číslic. Velká a malá písmena se rozlišují (case-sensitive).
  2. čísla - konstanty celočíselné(desítkové 1..9-0..9, oktalové 0-0..7, hexadecimální 0x-0..9 a-f A-F ) nebo reálné (1.0, 2e2, 2.1E-2)
  3. řetězce znaků - "posloupnost znaků uzavřená v apostrofech"
  4. znak - 'a' (typu int)
  5. speciální znaky -
    • '\'' apostrof
    • '\"' uvozovky
    • '\n' nový řádek
    • '\0' nula (konec řetězce)
    • '\\' zpětné lomítko
    • ...
  6. komentáře - podle standartu jazyka buď pouze /* C/C++ komentář */ nebo i //komentář do konce řádku C99/C++
  7. makra preprocesoru - #define
  8. podmíněný překlad - #ifdef, #ifndef, #else, #endif

Program

Program tvoří definice + deklarace. Definice maker a funkcí obsahují příkazovou část. U C musí část deklarací a definicí předcházet příkazovou část, v C++ se mohou být definice a deklarace promíchány s příkazy, většinou blízko místa kde jsou poprvé použity.

  1. deklarace a definice -
  2. příkazová část - { sekvence příkazů ve složených závorkách }

Java

  1. identifikátory - jméno začínající písmenem (pro odlišení od čísel), které následuje posloupnost písmen a číslic. Velká a malá písmena se rozlišují (case-sensitive).
  2. čísla - konstanty celočíselné(desítkové 1..9-0..9, oktalové 0-0..7, hexadecimální 0x-0..9 a-f A-F ) nebo reálné (1.0, 2e2, 2.1E-2)
  3. řetězce znaků - "posloupnost znaků uzavřená v apostrofech", řetězce jsou ukládány ve formátu UNICODE (diakritika, jeden znak na 16 bitů)
  4. speciální znaky -
    • '\'' apostrof
    • '\"' uvozovky
    • '\n' nový řádek
    • '\\' zpětné lomítko
    • ...
  5. komentáře - /* víceřádkový komentář */ nebo //komentář do konce řádku a /** komentář pro automatické generování dokumentace nástrojem JavaDoc (víceřádkový)*/

Program

Program tvoří skupina tříd. Konstanty a proměnné jsou uloženy jako atributy třídy. Příkazová část je rozdělena do jednotlivých metod třídy.

  1. deklarace a definice - atributy třídy nebo lokální proměnné v metodách
  2. příkazová část - { sekvence příkazů ve složených závorkách }

JavaScript

  1. identifikátory - jméno začínající písmenem (nebo '_'), které následuje posloupnost písmen a číslic. Velká a malá písmena se rozlišují (case-sensitive).
  2. čísla - konstanty celočíselné (desítkové 1..9-0..9, oktalové 0-0..7, hexadecimální 0x-0..9 a-f A-F ) nebo reálné (1.0, -2e2, 2.1E-2)
  3. řetězce znaků - "posloupnost znaků uzavřená v uvozovkách" nebo 'posloupnost v apostrofech'
  4. speciální znaky -
    • '\'' apostrof
    • '\"' uvozovky
    • '\t' tab
    • '\n' nový řádek
    • '\\' zpětné lomítko
    • ...
  5. komentáře - /* jako C/C++ komentář */ nebo //komentář do konce řádku

Matlab

  1. identifikátory - jméno začínající písmenem (pro odlišení od čísel), které následuje posloupnost písmen a číslic. Velká a malá písmena se rozlišují (case-sensitive). Největší rozpoznatelná délka je 63 znaků.
  2. čísla - konstanty celočíselné nebo reálné (1.0, 2e2, 2.1E-2)
  3. řetězce znaků - 'posloupnost znaků uzavřená v apostrofech'
  4. komentáře - %komentář do konce řádku , nebo %{ komentář přes několik %{ lze zanořovat %} řádků %} případně ... komentář do konce řádku ve víceřádkové definici.

PHP

Lexikální jednotky

  1. identifikátory - jméno proměnné začínající písmenem (pro odlišení od čísel), které následuje posloupnost písmen a číslic. Velká a malá písmena se rozlišují (case-sensitive).
  2. čísla - konstanty celočíselné(desítkové 1..9-0..9, oktalové 0-0..7, hexadecimální 0x-0..9 a-f A-F ) nebo reálné (1.0, 2e2, 2.1E-2)
  3. řetězce znaků - "posloupnost znaků uzavřená v apostrofech" nebo 'posloupnost znaků uzavřená v apostrofech'
  4. speciální znaky -
    • \n nový řádek
    • \t tab
    • \' apostrof
    • \" uvozovky
    • \\ zpětné lomítko
    • ...
  5. komentáře - podle syntaxe C++ /* komentář */ nebo //komentář do konce řádku, navíc i #komentář do konce řádku. Komentáře konce řádku budou ukončeny i koncem php bloku ?>
Autor: Václav Bubník © 2005
vbubnik@post.cz
XHTML 1.0| CSS