Hello, world – Уикипедия

Hello, world (от англ. „Здравей, свят“) е компютърна програма – стандартен пример за програмиране в много учебници и ръководства. Широката му употреба се дължи на краткостта, съчетана с показването на основните елементи на всяка програма:

  • формат на командите в езика
  • команди за извеждане на съобщения към потребителя
  • заглавна и завършваща част (при някои езици, напр. блоковите процедурни езици)
  • извикване на външни модули (при езиците без входно-изходни операции в основната библиотека)
  • създаване на класове (при обектно ориентирани езици)

По тези причини това обикновено е първата програма, използвана от начинаещ програмист на даден език за програмиране. По-долу са дадени примери на някои от езиците.

Ada[редактиране | редактиране на кода]

    with Ada.Text_IO;      procedure Hello is     begin        Ada.Text_IO.Put_Line ("Hello, world!");     end Hello; 

ALGOL[редактиране | редактиране на кода]

 begin    outstring(1,"Hello, world!")  end 

Асемблер[редактиране | редактиране на кода]

„Само-акумулатор“ архитектура: DEC PDP-8, PAL-III асемблер[редактиране | редактиране на кода]

  *10                   / Избиране на origin на адрес 10,   STPTR,    0           / в авто-инткрементиран регистър (един от осем – 10-17) 
  *200                  / Избиране на origin за текстовата област   HELLO,  CLA CLL       / Изчистване на AC и Link           TAD (STRNG-1) / Сетване на низовия указател в PRE-auto-increment регистъра           DCA STPTR     /   :   NEXT,   CLA CLL       / Изчистване на AC и Link още веднъж           TAD I STPTR   / Взимане на текстов символ недиректно през PRE-auto-increment адрес           SNA           / Скок ако не е нула (Не е достигнат края на низа)           HLT           / В противен случай прекъсване при нула (края на низа)           TLS           / Отпечатване на символа в АС принтиращата машина           TSF           / Скок ако принтиращата машина е готова           JMP .-1       / В противен случай – опитай отначало           JMP NEXT      / Скок за следващия символ 
  STRNG,  310           / H           345           / e           354           / l           354           / l           357           / o           254           / ,           240           / (интервал)           367           / w           357           / o           362           / r           354           / l           344           / d           241           / !           0             / Край на низа 

Първа сполучлива uP/OS комбинация: Intel 8080/Zilog Z80, CP/M Операционна система, RMAC асемблер[редактиране | редактиране на кода]

bdos    equ    0005H    ; BDOS стартова точка start:  mvi    c,9      ; BDOS функция: отпечатване на низ         lxi    d,msg$   ; адрес на съобщението         call   bdos         ret             ; връщане в CCP 
msg$:   db    'Hello, world!$' end     start 

Акумулатор + Индексен регистър: MOS Technology 6502, CBM KERNAL, ca65 асемблер[редактиране | редактиране на кода]

MSG:   .ASCIIZ "Hello, world!"         LDX    #$F3 @LP:    LDA    MSG-$F3,X ; Зареждане на символа         JSR    $FFD2     ; CHROUT (KERNAL), отпечатване на текущото устройство (екрана)         INX         BNE    @LP       ;         RTS 

Разширена акумулаторна машина: Intel x86, Linux, GAS[редактиране | редактиране на кода]

.data msg:     .ascii     "Hello, world!\n"     len = . – msg .text     .global _start _start:     movl	$len,%edx     movl	$msg,%ecx     movl	$1,%ebx     movl	$4,%eax     int	$0x80     movl	$0,%ebx     movl	$1,%eax     int	$0x80 

RISC процесор: ARM, RISC OS, BBC BASIC's инлайн асемблер[редактиране | редактиране на кода]

.program          ADR R0,message          SWI "OS_Write0"          SWI "OS_Exit" .message          DCS "Hello, world!"          DCB 0           ALIGN 

RISC Процесор: MIPS[редактиране | редактиране на кода]

         .data msg:     .asciiz "Hello, world!"          .align 2          .text          .globl main main:          la $a0,msg          li $v0,4          syscall          jr $ra 

bash[редактиране | редактиране на кода]

  echo 'Hello world' 

BASIC[редактиране | редактиране на кода]

Класически BASIC[редактиране | редактиране на кода]

 10 PRINT "Hello, world!"  20 END 

Модерен BASIC[редактиране | редактиране на кода]

 PRINT "Hello, World!"  END 

BCPL[редактиране | редактиране на кода]

GET "LIBHDR"
LET START () BE $( WRITES ("Hello, world!*N") $)

C[редактиране | редактиране на кода]

 #include <stdio.h>   int main(void)  {      printf("Hello, world!\n");      return 0;  } 

C++[редактиране | редактиране на кода]

 #include <iostream>   int main()  {      std::cout << "Hello, world" << std::endl;      return 0;  } 

C#[редактиране | редактиране на кода]

 using System;   class HelloWorldApp  {      public static void Main()      {          Console.WriteLine("Hello, world!");      }  } 

Forth[редактиране | редактиране на кода]

   ." Hello, world!" CR 

FORTRAN[редактиране | редактиране на кода]

    program hello         write (*,*) 'Hello, world!'     end program hello 

Java[редактиране | редактиране на кода]

    public class Hello {         public static void main(String[] args) {             System.out.println("Hello, world!");         }     } 

Принципно погледнато не е необходимо класът да е публичен. Ако класът е публичен както в примера е необходимо файлът съдържащ кодът на програмата да е със същото име като класът (включително главните и малките букви) и разширение java, т.е. Този пример трябва да се намира във файл Hello.java.

JavaScript[редактиране | редактиране на кода]

 document.writeln('Hello, world!'); 

LISP[редактиране | редактиране на кода]

(PRINT "Hello, world!") 

MS-DOS batch[редактиране | редактиране на кода]

 @echo Hello, world! 

За MS-DOS 3.0 или по стар:

 echo off  echo Hello, world! 

Pascal[редактиране | редактиране на кода]

    Program Hello;     begin         WriteLn('Hello, world!');     end. 

PHP[редактиране | редактиране на кода]

    <?php     echo "Hello, world!\n";     ?> 

PL/I[редактиране | редактиране на кода]

   Test: proc options(main) reorder;      put skip edit('Hello, world!') (a);    end Test; 

Пролог[редактиране | редактиране на кода]

    write('Hello world'),nl. 

Python[редактиране | редактиране на кода]

    print('Hello World!') 

Perl[редактиране | редактиране на кода]

Perl 5
   print "Hello world\n"; 
Perl 6
   say "Hello world"; 

Ruby[редактиране | редактиране на кода]

   puts "Hello, world!" 

Seed7[редактиране | редактиране на кода]

  $ include "seed7_05.s7i"; 
  const proc: main is func     begin       writeln("Hello, world!");     end func; 

Tex[редактиране | редактиране на кода]

Hello world \bye 

Visual Basic[редактиране | редактиране на кода]

Sub Main   MsgBox "Hello, world!" End Sub 

Visual Basic .NET[редактиране | редактиране на кода]

Module HelloWorldApp    Sub Main()       System.Console.WriteLine("Hello, world!")    End Sub End Module 

XUL[редактиране | редактиране на кода]

XUL e xml базиран език, разработен от Mozilla.

<?xml-stylesheet href="chrome://global/skin" type="text/css" ?> <window xmlns="http://www.mozilla.org/keymaster/gatekeeper/there.is.only.xul"         align="center" pack="center" flex="1">   <description>Hello, world!</description> </window> 

Източници[редактиране | редактиране на кода]