Assembly 如何在回车和换行符后打印字母表?
打印a-z。 mov-DL,‘A’; cmp-DL,‘Z’; jge Next; 添加DL,01H;在DL中添加一个 jmp-addPrintAssembly 如何在回车和换行符后打印字母表?,assembly,while-loop,x86,x86-16,dosbox,Assembly,While Loop,X86,X86 16,Dosbox,打印a-z。 mov-DL,‘A’; cmp-DL,‘Z’; jge Next; 添加DL,01H;在DL中添加一个 jmp-addPrint 首先,在您的程序中根本没有打印。只有循环从“A”到“Y”(一个错误关闭),然后转到下一个的循环 在您的情况下,不需要.data和.bss部分.data应包含程序所需的初始化数据(字符串、表格等)和.bss未初始化的数据。(顺便说一句,什么是汇编程序?therm“section”通常用于保护模式编程,而不是DOS。通常称为“segment”。) 如果您试图
.data
和.bss
部分.data
应包含程序所需的初始化数据(字符串、表格等)和.bss
未初始化的数据。(顺便说一句,什么是汇编程序?therm“section”通常用于保护模式编程,而不是DOS。通常称为“segment”。)回车符CR和换行符LF是类似于“A”的ASCII字符。。。看ASCII表格。看来你太野心勃勃了。首先,试着编写一个只打印“a”的程序。1。好的,谢谢你的澄清。2.我在考虑使用.data和.bss部分,但不完全确定。3.我正在创建一个.asm文件。抱歉,如果不清楚,我正在使用DOSBOX,然后在其中使用nasmide。@throwawayjava-请在问题中添加一个关于所用汇编程序的标记。这非常重要,因为不同的汇编程序有不同的语法<代码>段=
段
,这样就可以了。您希望初始的mov dl'A'
在循环之外-如果每次都将其重置为'A',您将永远不会退出循环。您需要在int21h
-2
之前的ah
中输入一个函数号,以打印dl
并退出4Ch
。@FrankKotler好的,谢谢您的建议和无限循环分辨率!