“Hello, World!”程序是一个只在计算机屏幕上打印出“Hello, World!”(英语,意为“世界,你好!”)字串的计算机程序。该程序通常是计算机程序设计语言的初学者所要学习编写的第一个程序。它还可以用来确定该语言的编译器、程序开发环境以及运行环境已经正确安装。 <\@1Zz@ms
= .oHnMX2M
将Hello World程序作为第一个学写的程序,现在已经成为一种传统。该程序最早出现在由Brian Kernighan和Dennis Ritchie写的计算机程序设计教程《C语言程序设计》。 #Qbl=o4
jtKn3m7 +p
以下是用不同语言写成的Hello World程序的几个例子: RY=1H
Ada {8@\Ij
with Ada.Text_Io; use Ada.Text_Io; ;/LD)$_
procedure Hello is 6^#uLp>
begin ?a.+j8pbGg
Put_Line ("Hello, world!"); [VSU"AJY
end Hello; 4h|dHXYZ
GXX+}=b7qO
nl1-kB)$e|
汇编语言 "0&N}
Yck~xt&]
x86 CPU,DOS,TASM >UHa
MODEL SMALL u&]vd /
IDEAL #[ -\lU|
STACK 100H M>l^%`
Zk?
=
DATASEG \cuS>G
HW DB 'Hello, world!$' ULBg{e?l8
x5Zrz<Y$w
CODESEG vtxvS3
MOV AX, @data AQ{zx1^2>K
MOV DS, AX >V;,#5F_
MOV DX, OFFSET HW \#dl6:"
MOV AH, 09H Z=+03
INT 21H p-$Cs _{Z
MOV AX, 4C00H Bw<rp-
INT 21H K7`YJp`i
END >q7
%UK]&
gPEqjj
7*+TP~WI
x86 CPU,GNU/Linux,NASM #y; yN7W
;"Hello World" for Linux on Intel 80x86 using nasm (Intel syntax). ;IZ?19Q
;Enter this into "hello.asm" then type: g9mG`f
;"nasm -f elf hello.asm"
K5"sj|d&
;"ld hello.o -o hello" svhrf;3:
;"./hello" h##WA=1QZ
yA7)Y})>
section .data ;data section declaration ``QHG&$/
msg db 'Hello World!',0AH /"#4T^7&
len equ $-msg ;string length Z(Q2Ue;}&
eD;6okdP
section .text ;code section declaration faJM^ u
global _start ;entry point (start of execution) f3PMVf:<
_start: mov edx,len ;string length \54}T4R
mov ecx,msg ;string start FGanxv@15
mov ebx,1 ;file handle: stdout t#~?{i@m
mov eax,4 ;sys_write mLwY]2T"
int 80h ;kernel system call Rp.W,)i
KL3<Iz]
mov ebx,0 ;return value Q/^A #l[
mov eax,1 ;sys_exit zg}YGu|J
int 80h ;kernel system call >bm|%Ou"
[aW =
UuJjO^t
x86 CPU,Windows,MASM32 45+{nN[
.386 lAASV{s{
.model flat,stdcall kU*{4G|6
option casemap:none ^Udv]Wh
;Include 文件定义 'fW#7W
include windows.inc #MgvG,
include user32.inc 4\2V9F{s
includelib user32.lib +V8b
include kernel32.inc #}yTDBt
includelib kernel32.lib \C|cp|A*&
;数据段 =nxKttmU0
.data l\Ftr_Dk
szCaption db 'A MessageBox!',0 W)=%mdxW0
szText db 'Hello,world!',0 T0e<Slo~C
;代码段 3'eG;<