"Hello, World!"

"Hello, World!" program (hrv. "Pozdrav svijete!") je računalni program koji prikazuje poruku "Hello, World!". Takav program je vrlo jednostavan u većini programskih jezika te se često koristi kao prikaz osnovne sintakse određenog programskog jezika. "Hello, World!" program obično je prvi program koji programeri napišu.

Pozdravljanje svijeta u raznim programskim jezicimaUredi

Bash:

#!/bin/bash
STR="Hello World!"
echo $STR

Basic:

10 PRINT "Hello, World!"
20 END

C:

#include <stdio.h>

int main(void)
{
    printf("hello, world\n");
    return 0;
}

C++:

#include <iostream>

int main()
{
    std::cout << "Hello, world!\n";
    return 0;
}

C#:

using System;

class Program
{
    static void Main(string[] args)
    {
        Console.WriteLine("Hello, world!");
    }
}

F#:

open System

Console.WriteLine("Hello World!")

GO:

package main

import "fmt"

func main() {
    fmt.Println("Hello, World")
}

Haskell:

module Main where

main :: IO ()
main = putStrLn "Hello, World!"

Java:

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

Lua:

print("Hello World!")

PHP:

<?php
  echo "Hello World!";
?>

Python:

print("Hello World")

Ruby:

puts 'Hello World!'

Swift:

println("Hello, world!")

Asemblerski jezik:

.data                               # Dohvati podatke iz sljedećih linija
msg: .asciiz “\nHello, World!\n    # Spremi adresu stringa "\nHello, World!\n" pod oznaku "msg"

.text                               # Označi početak koda
main:                               # Označi mjesto početka izvođenja programa
li $v0, 4                           # Spremi cijeli broj 4, koji označava "print string" u registar v0
la $a0, msg                         # Ubaci adresu stringa "\nHello, World!\n" u a0 registar
syscall                             # Pozovi sistem

li $v0, 10                          # Spremi cijeli broj 10, koji označava "exit" u registar v0
syscall                             # Pozovi sistem

Strojni jezik:

b8    21 0a 00 00   #premjesti "!\n" u eax
a3    0c 10 00 06   #premjesti eax u prvu memorijsku lokaciju
b8    6f 72 6c 64   #premjesti "orld" u eax
a3    08 10 00 06   #premjesti eax u sljedeću memorijsku lokaciju
b8    6f 2c 20 57   #premjesti "o, W" u eax
a3    04 10 00 06   #premjesti eax u sljedeću memorijsku lokaciju
b8    48 65 6c 6c   #premjesti "Hell" u eax
a3    00 10 00 06   #premjesti eax u sljedeću memorijsku lokaciju
b9    00 10 00 06   #premjesti pokazivač na početak memorijske lokacije registra ecx
ba    10 00 00 00   #premjesti veličinu stringa u edx
bb    01 00 00 00   #premjesti "stdout" broj u ebx
b8    04 00 00 00   #premjesti "print out" syscall broj u eax
cd    80            #pozovi jezgru linuxa da izvrši ispis na "stdout"
b8    01 00 00 00   #premjesti "sys_exit" broj u eax
cd    80            #izvrši ga pomoću linux sys_call metode