[英]How to get input onto a new line with Assembly Language (Intel 8086)
[英]Insert a new line assembly 8086
我正在學習匯編語言,我有一個疑問。 我正在使用以下代碼編寫一個簡單的“hello world”:
.model small
.stack
.data
message db 'Hello world! $'
.code
start:
mov dx,@data
mov ds.dx
lea dx,message
move ah,09h
int 21h
mov ax,4c00h
int 21h
end start
我假設message db 'Hello world! $'
message db 'Hello world! $'
像一個字符串一樣工作,現在我想知道是否可以添加像 \\n 這樣的東西來使輸出分成兩行,比如這條message db 'Hello\\nworld! $'
message db 'Hello\\nworld! $'
。 那可能嗎?
message db 'Hello world! $'
許多匯編程序不會解釋嵌入在字符串中的 \\n。
大多數匯編程序將接受以下內容來插入換行符:
message db 'Hello',13,10,'world!',13,10,'$'
值 13 是回車,值 10 是換行。
為我工作(8086 程序集):
.MODEL SMALL
.STACK 100H
.DATA
LOADING DB 'Starting LunaOS...','$'
DONELOADING DB 'Starting LunaOS... done.','$'
.CODE
MOV AX,@DATA
MOV DS,AX
LEA DX,LOADING
MOV AH,9
INT 21H
LEA DX,DONELOADING
MOV AH,9
INT 21H
;LEA DX,STRING2
;MOV AH,9
;INT 21H
;LEA DX,STRING3
;MOV AH,9
;INT 21H
;LEA DX,STRING4
;MOV AH,9
;INT 21H
MOV AH,4CH
INT 21H
END
要添加新行,請復制 LEA DX,(STRING NAME) 並復制 MOV AH, 9。然后復制 INT 21h,將其粘貼到新行,將字符串添加到“.DATA”,更改 LEA,DX(字符串名稱)到 LEA,DX(新字符串名稱)
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.