Alert icon
We're changing our privacy policy. This stuff matters.  Learn more  Dismiss

How to make the classic "Hello world!" program in old school assembly.

Loading...

Sign in or sign up now!
Alert icon
Upgrade to the latest Flash Player for improved playback performance. Upgrade now or more info.
71,864
Loading...
Alert icon
Sign in or sign up now!
Alert icon

Uploaded by on Mar 14, 2009

Method 2: http://www.youtube.com/watch?v=9Qn84QxX-zs

In this tutorial; I quickly go through the process of creating the classic "Hello world!" program in assembly using MS debug. On the side; I briefly explain each process. If you feel it goes too fast for you; simply pause it (yes, I know the music rocks). If you need more explanation of what a certain thing is; you can check it out the article on assembly on Wikipedia. Be sure to look at the resources at the bottom of the page as they are more useful. You may even want to see the FASM Programmer's manual @ http://flatassembler.net/docs.php?article=manual. Of course, you can always Google "assembly tutorial" and find out what registers and interrupts are. I know, these tutorials are hardly decent. If anyone out there knows assembly well; make a good tutorial either in video or article form.

For those of you who want my custom command prompt; copy this into notepad:
@echo off
break off
Title Tony's Command Prompt
color 0a
cls

echo Type "home" any time to go to the current user profile directory.
echo Type "desktop" any time to go to the current user desktop.
echo.
echo Type help to see list of common commands like cd, rd, md, del,
echo ren, replace, copy, xcopy, move, attrib, tree, edit, and cls.
echo Type [command]/? for detailed info.
echo.
pause
cls

:cmd
echo Directory: %CD%
set /P CMD=Command:
if "%CMD%" == "cls" goto cls
if "%CMD%" == "home" goto home
if "%CMD%" == "desktop" goto desktop
if "%CMD%" == "red" goto red
if "%CMD%" == "green" goto green

%CMD%
echo.
goto cmd

:cls
cls
goto cmd

:home
cd /d %USERPROFILE%
cls
goto cmd

:desktop
cd /d %SystemDrive%\DOCUME~1\%USERNAME%\Desktop
cls
goto cmd

:red
color 0c
cls
goto cmd

:green
color 0a
cls
goto cmd

========================================
Now save the file as cmd.bat and run the file. You can change the color of the text simply by entering "red" without the quotes. To change back; enter "green". I've also included a "home" and "desktop" command. The "cls" command you see is just for formatting. My command prompt has more features than this such as quick access to GnuPg and John the ripper but I figure that not everyone needs every feature I have.

Production by Anthony Lee Vanover II
Music: Subatomic Glue - Jetpack in hand

Any questions, comments, threats? Go ahead because I'm genuinely interested...

  • likes, 16 dislikes

Link to this comment:

Share to:

Uploader Comments (Ichthus91)

  • easier code:

    mov ah, 09

    mov ah, 109

    int 21

    int 20

    db "Hello World!$"

  • you can't define byte with debug. "db" is an object-orientated notation. You can do something like it though. See method 2 which I included in the description.

  • @Ichthus91

    uh... ya you can, try my code exactly how I have it typed

  • @acount134 Your code require an object-orientated compiler. As I said... see method 2. Method 2 shows how to "define byte" in debug.

Top Comments

  • Why not use;

    .db "Hello World", $

see all

All Comments (116)

Sign In or Sign Up now to post a comment!
  • @mason092 Actually, C++ is one of the hardest languages to completely grasp, while assembler is trivial. Cross-cutting interactions of various C++ features are super hard to see through in some cases.

    The point of C++ and comparable HLLs isn't to be easy, it's to increase productivity and make writing huge, high-performance software manageable by providing some abstraction and safety measures - which don't have to nor usually map to natural language and thinking.

  • @Ichthus91 how did you get into debug mode because i made your program that your using in this vid and i couldn't get into debug mode by just typing "debug" so how did you get into it?

  • now a day:

    @echo off

    color 2

    echo hello world

    pause

    XD

  • oh god. i gotta stop watching all of these video i cant understand. oh well, no sleep tonite i guess.

  • I am new to this, but when it says to look where address 111, where is is?

  • i love you visual basic :D

  • @Ichthus91 Actually this can work. Although your method is better because his you have to plan out where your value will end up at the end, but yours you just create your define your bytes while going a long.

Loading...
Alert icon
0 / 00Unsaved Playlist Return to active list
    1. Your queue is empty. Add videos to your queue using this button:
      or sign in to load a different list.
    Loading...Loading...Saving...
    • Clear all videos from this list
    • Learn more