【问题标题】:What does "10, 13" mean when declaring a string? [duplicate]声明字符串时“10, 13”是什么意思? [复制]
【发布时间】:2016-09-13 00:04:38
【问题描述】:

我想知道 10、13 是如何在新行中生成字符串的解释,以及 10 和 13 是什么意思,以及为什么它们用 "​​ , " 逗号分隔

这是我的代码

.model small
.stack 100h

.data

dog db "Hellowww" , 10, 13, "Earth, $"

cat db "im valen the alien $"

.code
start:

    mov ax, @data
    mov ds, ax

    mov ah, 09h

    mov dx, offset dog
    int 21h

    mov dx, offset cat
    int 21h

    mov ah, 4ch
    int 21h

end start

结果是

Hellowww
Earth, im valen the alien

Assembly code to print a new line string

【问题讨论】:

  • 它们是换行 (LF) - ASCII 字符 10 和回车 (CR) - ASCII 字符 13 en.wikipedia.org/wiki/Newline#Representations
  • 对了,如果“, 10,”已经可以在我的字符串中添加新行,那么在“, 10, 13”中添加13是什么意思?
  • @ElecTreeFrying 在某些终端上,LF 将光标下移一行(不改变水平位置),而 CR 将光标移回最左侧的列。请注意,在使用 CR 的系统(如 Windows)上,习惯上首先拥有 CR。所以 13 应该在代码中的 10 之前。
  • 请注意,10, 13 与标准约定相反。你想要CR, LF (13, 10)。 Why we use 10,13 after MSG1 DB in the line MSG1 DB 10,13, 'NUMBER IS POSITIVE $'?

标签: assembly ascii


【解决方案1】:

这是 ASCII CR/LF(回车/换行)序列,分别为 13 和 10,用于前进到下一行的开头。

可以在这里找到一个很好的解释:https://stackoverflow.com/a/1552775/5760411

【讨论】:

  • 对了,如果“, 10,”已经可以在我的字符串中添加新行,那么在“, 10, 13”中添加13是什么意思?
猜你喜欢
  • 1970-01-01
  • 2021-12-16
  • 1970-01-01
  • 2012-05-09
  • 2012-12-06
  • 1970-01-01
  • 2014-12-23
  • 1970-01-01
  • 2013-02-08
相关资源
最近更新 更多