Sign Up

Sign Up to our social questions and Answers Engine to ask questions, answer people’s questions, and connect with other people.

Have an account? Sign In

Have an account? Sign In Now

Sign In

Login to our social questions & Answers Engine to ask questions answer people’s questions & connect with other people.

Sign Up Here

Forgot Password?

Don't have account, Sign Up Here

Forgot Password

Lost your password? Please enter your email address. You will receive a link and will create a new password via email.

Have an account? Sign In Now

You must login to ask a question.

Forgot Password?

Need An Account, Sign Up Here

Please briefly explain why you feel this question should be reported.

Please briefly explain why you feel this answer should be reported.

Please briefly explain why you feel this user should be reported.

Sign InSign Up

The Archive Base

The Archive Base Logo The Archive Base Logo

The Archive Base Navigation

  • Home
  • SEARCH
  • About Us
  • Blog
  • Contact Us
Search
Ask A Question

Mobile menu

Close
Ask a Question
  • Home
  • Add group
  • Groups page
  • Feed
  • User Profile
  • Communities
  • Questions
    • New Questions
    • Trending Questions
    • Must read Questions
    • Hot Questions
  • Polls
  • Tags
  • Badges
  • Buy Points
  • Users
  • Help
  • Buy Theme
  • SEARCH
Home/ Questions/Q 3666922
In Process

The Archive Base Latest Questions

Editorial Team
  • 0
Editorial Team
Asked: May 19, 20262026-05-19T01:56:19+00:00 2026-05-19T01:56:19+00:00

I’m trying to learn Assembler and following a tutorial, and the first examples worked

  • 0

I’m trying to learn Assembler and following a tutorial, and the first examples worked perfectly. I know a bit of the basics, but I’m having problems with variables. Here’s the code I’m trying to compile:

leftbr db "("
rightbr db ")"
input db

start:
mov ah,08
int 21h
mov input,al

output:
mov dl,leftbr
mov ah,02
int 21h
mov dl,key
int 21h
mov dl,rightbr
int 21h

exit:
mov ah,4ch
mov al,00
int 21h

It crashes at “input db” saying “invalid argument”. If I change it to “input db “” ” then it crashes at “mov input,al” claiming “invalid operands”. I changed it to the following and it now works.

start:
mov ah,08
int 21h
mov [input],al

output:
mov [leftbr], "("
mov [rightbr], ")"
mov dl,[leftbr]
mov ah,02
int 21h
mov dl,[input]
int 21h
mov dl,[rightbr]
int 21h

exit:
mov ah,4ch
mov al,00
int 21h

leftbr db 0
rightbr db 0
input db 0
  • 1 1 Answer
  • 0 Views
  • 0 Followers
  • 0
Share
  • Facebook
  • Report

Leave an answer
Cancel reply

You must login to add an answer.

Forgot Password?

Need An Account, Sign Up Here

1 Answer

  • Voted
  • Oldest
  • Recent
  • Random
  1. Editorial Team
    Editorial Team
    2026-05-19T01:56:19+00:00Added an answer on May 19, 2026 at 1:56 am

    The line mov input, al tries to move al into the value defined by the line input db 0, e.g. the compiler translates it into mov 0, al. What you want to do, is move al to the position “input”, so I guess (ASM coding was some time ago for me) mov [input], al or mov byte ptr:[input], al would work better.

    Edit: this is what displays “(a)” for me. Running CrunchBang Linux/Wine/FASM for windows.

    format MZ
    org 0x100
    
    jmp start
    leftbr db "(", 0
    rightbr db ")"
    input db "a"
    
    start:
    xor ax,ax
    mov ah,08
    ;int 21h ; commenting this line because wine doesn't seem to like it
    ;mov [input],al
    
    output:
    mov dl,byte [leftbr]
    mov ah,02
    int 21h
    mov ah,02 ; not sure if ah gets modified, probably not
    mov dl,[input]
    int 21h
    mov ah,02
    mov dl,[rightbr]
    int 21h
    
    exit:
    mov ah,4ch
    mov al,00
    int 21h 
    
    • 0
    • Reply
    • Share
      Share
      • Share on Facebook
      • Share on Twitter
      • Share on LinkedIn
      • Share on WhatsApp
      • Report

Sidebar

Related Questions

I need to clean up various Word 'smart' characters in user input, including but
We are using XSLT to translate a RIXML file to XML. Our RIXML contains
i want to parse a xhtml file and display in UITableView. what is the
public static bool CheckLogin(string Username, string Password, bool AutoLogin) { bool LoginSuccessful; // Trim

Explore

  • Home
  • Add group
  • Groups page
  • Communities
  • Questions
    • New Questions
    • Trending Questions
    • Must read Questions
    • Hot Questions
  • Polls
  • Tags
  • Badges
  • Users
  • Help
  • SEARCH

Footer

© 2021 The Archive Base. All Rights Reserved
With Love by The Archive Base

Insert/edit link

Enter the destination URL

Or link to existing content

    No search term specified. Showing recent items. Search or use up and down arrow keys to select an item.