为什么我的 LC-3 中的 ASCII ART 看起来如此难看?

问题描述

我编写了一个输出一些 ASCII ART 的 LC-3 程序。它拼写“COOL”这个词。但结果证明这张照片非常难看。
这就是我得到的:

enter image description here

这就是我想看到的:

   _____ ____   ____  _      
  / ____/ __ \ / __ \| |     
 | |   | |  | | |  | | |     
 | |   | |  | | |  | | |     
 | |___| |__| | |__| | |____ 
  \_____\____/ \____/|______|
                             
                             

我的程序:

.ORIG x3000
ADD R0,R0,#0
LEA R0,ART
LOOP TRAP x22;
ADD R1,R1,#-1;
BRp LOOP;

ART .stringz "\n   _____ ____   ____  _      \n  / ____/ __ \ / __ \| |     \n | |   | |  | | |  | | |     \n | |   | |  | | |  | | |     \n | |___| |__| | |__| | |____ \n  \_____\____/ \____/|______|\n                             \n                             \n"
COUNTER .fill #1;
.END

我试图通过添加空格来修复我的代码,但它仍然不起作用。
谁能告诉我我做错了什么。

解决方法

由于反斜杠字符“\”被用作转义字符,图片变得扭曲!您已经将它用于换行符“\n”,但是您的徽标设计包含要在屏幕上显示的 5 个额外反斜杠。您需要像“\\”一样将它们加倍。

您可以在此 wikipedia article 中阅读有关转义字符的信息。

下面是我将五个反斜杠加倍的新字符串定义:

ART .stringz "\n   _____ ____   ____  _      \n  / ____/ __ \\ / __ \\| |     \n | |   | |  | | |  | | |     \n | |   | |  | | |  | | |     \n | |___| |__| | |__| | |____ \n  \\_____\\____/ \\____/|______|\n                             \n                             \n"