スラッシュドット ジャパン | Hello, world!はASCIIで書くべきだ

プログラムは ASCII で書くべきだよ」とか見て、そうかもねとか思いながら書いてみた。メモ帳にコピペして hello.com という名前で保存して、コマンドプロンプトから実行で。

T_OOWW3=XXWXPY50PPZ5jQP_-ys,A1Ea5y852cP4Z4PP-pV40P-BOu
com2txt/Nide5UqPWX,wP500-MQP4UP-wx4XP5rjP5Z2P-jC,JP=
5O4,APRX5BZP-pJPPQX42P-r=PRX55aP59DHHP-99,UP-lt,mP-uq=
P5_VHP-4A40PTZ,TPP_RX__ohD4L84s7orLrH9Xm4fzEpGMH3QLsRE
HYVql3rp.Uv7r3FPaI4:

…まぁ、バイナリ方面はイマイチなヘタレなので com2txt 使ってテキストに直したんだけど。って、よく考えたら、eicar.com がまさにそれじゃん。
ちなみに com の元になるソースはこんな感じ。久々にアセンブラ。もっと縮まるだろうけどまぁいいや。定番の LSI-C86 でコンパイルアセンブルしますた。

CGROUP	GROUP	TEXT
TEXT	CSEG
		RS		100H

_main:
		MOV		SI, 0081H
		XOR		AX, AX
		XOR		SI, SI
		CLD

		;print Hello, World
		MOV		AX, CS
		MOV		DS, AX
		MOV		AH, 09H
		MOV		DX, str
		INT		21H

		MOV		AH, 4CH
		INT		21H
str:
		DB		"Hello, World!$"

		END