“Hello, World!”程序是一个只在计算机屏幕上打印出“Hello, World!”(英语,意为“世界,你好!”)字串的计算机程序。该程序通常是计算机程序设计语言的初学者所要学习编写的第一个程序。它还可以用来确定该语言的编译器、程序开发环境以及运行环境已经正确安装。 %Lyz_2q A
x2@,9OUx
将Hello World程序作为第一个学写的程序,现在已经成为一种传统。该程序最早出现在由Brian Kernighan和Dennis Ritchie写的计算机程序设计教程《C语言程序设计》。 %E aE,
Qm; BUG]
以下是用不同语言写成的Hello World程序的几个例子: E23w *']
Ada 2kVp_=c
with Ada.Text_Io; use Ada.Text_Io; nPOO3!<{
procedure Hello is eG4>d^`c
begin nEyIt&>9
Put_Line ("Hello, world!"); ~{P:sjsU
end Hello; 4\HsU9x
aHC%19UN
ULIFSd Y
汇编语言 6g~+( ({lQ
=zOeb/
x86 CPU,DOS,TASM Y&g&n o_
MODEL SMALL LXNQb6!
IDEAL >(3'Tnu
STACK 100H B=dseeG[To
as#J qE
DATASEG vK:QX$b
HW DB 'Hello, world!$' T
.hb#oO
cQn)^jx=
CODESEG ,T{oy:rB
MOV AX, @data ??(Kwtx{
MOV DS, AX qv uxhz F
MOV DX, OFFSET HW &[~[~m|
MOV AH, 09H `.8UKSH+
INT 21H V^2-_V]8
MOV AX, 4C00H \K}aQKB/j
INT 21H 8YKQItK
END ~#Aa Ldq
r)8z#W>s
"xn|zB
x86 CPU,GNU/Linux,NASM LABNj{=D!
;"Hello World" for Linux on Intel 80x86 using nasm (Intel syntax). :Y^I]`lR"
;Enter this into "hello.asm" then type: ]u0Jd#@
;"nasm -f elf hello.asm" a_{6Qdl
;"ld hello.o -o hello" 1eD.:_t4
;"./hello" aq kix"J
.8(%4ejJ(
section .data ;data section declaration Yf=FeH7"
msg db 'Hello World!',0AH <xqba4O
len equ $-msg ;string length JiA'BEJN
Q;wB{vr$
section .text ;code section declaration 0m&3?"5u
global _start ;entry point (start of execution) KoF
iQ?
_start: mov edx,len ;string length Hm4bN\%
mov ecx,msg ;string start {g_@Tuu
mov ebx,1 ;file handle: stdout ^mf jn-=3
mov eax,4 ;sys_write ,ux+Qz5(
int 80h ;kernel system call Ag6uR(uI
Ow)R|/e/
mov ebx,0 ;return value a:}E& ,&M
mov eax,1 ;sys_exit {i;6vRr
int 80h ;kernel system call =<.F3lo\s
4U{m7[
h'!V8'}O?
x86 CPU,Windows,MASM32 $"fzBM?5
.386 e8q4O|I_
.model flat,stdcall d.cCbr:
option casemap:none jCQho-1QN
;Include 文件定义 Y|RdzCM
include windows.inc O^NP0E
include user32.inc lD3)TAW@o
includelib user32.lib !FP"M+
include kernel32.inc
Q;20T
includelib kernel32.lib ?0z)EPQ|
;数据段 Pb4q`!
.data 5Eal1Qu
szCaption db 'A MessageBox!',0 9-93aC.|}
szText db 'Hello,world!',0 WHk/$7_"i
;代码段 9wMEvX70
.code *l-`<.
start: n$W"=Z;`
invoke MessageBox,NULL,offset szText,offset szCaption,MB_OK ]1}h8/
invoke ExitProcess,NULL g@u;Y5
;>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>> Pi){ h~B>
end start (3O1?n[n
D 'n7&