“Hello, World!”程序是一个只在计算机屏幕上打印出“Hello, World!”(英语,意为“世界,你好!”)字串的计算机程序。该程序通常是计算机程序设计语言的初学者所要学习编写的第一个程序。它还可以用来确定该语言的编译器、程序开发环境以及运行环境已经正确安装。 B9,39rG/7+
6Gg`ExcT5
将Hello World程序作为第一个学写的程序,现在已经成为一种传统。该程序最早出现在由Brian Kernighan和Dennis Ritchie写的计算机程序设计教程《C语言程序设计》。 jUD^]Qs
vVMoCG"f
以下是用不同语言写成的Hello World程序的几个例子: m$C1Ea-wnT
Ada </kuJh\
with Ada.Text_Io; use Ada.Text_Io; *ELU">!}G
procedure Hello is j=pg5T
begin K Zg NL|
Put_Line ("Hello, world!"); O)W+rmToI
end Hello; t<dFH}U`w
XZN@hXc9:v
:2KPvp7?
汇编语言 i+(>w'=m
1BmKwux:
x86 CPU,DOS,TASM f:46.)Wj<
MODEL SMALL [4xZy5V
IDEAL "'t f]s
STACK 100H V0D&bN*
8Vz!zYl
DATASEG R1SFMI
HW DB 'Hello, world!$' n;Mk\*Cg
4"|3pMr
CODESEG X>
98`
MOV AX, @data oAifM1*0
MOV DS, AX onmpMU7w
MOV DX, OFFSET HW aoz+T h3
MOV AH, 09H _<]0hC
INT 21H HPu+ 4xQV
MOV AX, 4C00H UU(Pg{DA6
INT 21H v6G1y[Wl
END 8a)4>B
9_==C"F
]O}e{Q>
x86 CPU,GNU/Linux,NASM XzIC~}
;"Hello World" for Linux on Intel 80x86 using nasm (Intel syntax). i`52tH y_
;Enter this into "hello.asm" then type: MtwlZg`c3
;"nasm -f elf hello.asm" :@5{*o
;"ld hello.o -o hello" =^p}JhQ
;"./hello" .h4NG4FIF
,){#J"W
section .data ;data section declaration c|3oa"6T>
msg db 'Hello World!',0AH )-"<19eu
len equ $-msg ;string length ]35`N<Ac
MA_YMxP.'
section .text ;code section declaration X2I_,k'fQ
global _start ;entry point (start of execution) [(a3ljbRX
_start: mov edx,len ;string length FO>!T@0G
mov ecx,msg ;string start 0t7)x8c
mov ebx,1 ;file handle: stdout N"<.v6Z
mov eax,4 ;sys_write
E,\)tZ;,
int 80h ;kernel system call O*/%zr
S]=.p-Am
mov ebx,0 ;return value IAzFwlO9
mov eax,1 ;sys_exit I++ Le%w
int 80h ;kernel system call .Y2Hd$rs
wEq&O|Vj
U]+I P;YS
x86 CPU,Windows,MASM32 L8n?F#q
.386 oMemF3M
.model flat,stdcall PSv 5tQhm
option casemap:none (;=|2N>7
;Include 文件定义 ;F-
mt( Y
include windows.inc IR]5,K^l
include user32.inc *jQ$\|Y
includelib user32.lib vN
v'%;L
include kernel32.inc H!0m8LCnb
includelib kernel32.lib _\yR/W~
;数据段 LmyaC2
.data J~J+CGT~2
szCaption db 'A MessageBox!',0 P<Z` 8a[
szText db 'Hello,world!',0 !"<rlB,J
;代码段 \:@7)(p\;
.code Z3MhHvvgp{
start: F5+FO^3E
invoke MessageBox,NULL,offset szText,offset szCaption,MB_OK W4av?H
invoke ExitProcess,NULL D^h!
].3
T
;>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>> F0&ubspt