我不明白汇编如何使用ASCII?

时间:2009-10-04 14:53:39

标签: assembly ascii hex

我有一个程序,它应该取值并打印出来。但是当用户输入类似于12的内容((HE中的C)时,程序会打印出一些奇怪的字母,我认为这是ASCII中的表示。有没有办法让它将这些数字保存为原始数字?我正在通过外部库进行输入和输出,所以我不知道这是否与它有任何关系。

1 个答案:

答案 0 :(得分:2)

有多种方法可以在计算机内存储号码。主要是:

  • 作为原生二进制数。数字123将存储为八位字节:0x7b,如果使用大于一个字节的整数,则使用零填充。零填充可以在左侧(大端机器)或右侧(小端机器)。
  • 作为一个字符串。假设ASCII / Latin1 / UTF-8,123将被存储为0x31 32 33。可能首先是长度字段(存储为本机二进制数)或之后是零字节(0x00)以指示字符串结束的位置。
  • BCD。 123将被存储为0x01 23.字节也可以以little-endian顺序存储,如0x23 01。

您需要确定(希望文档说明)输入库需要的格式以及输出库提供的格式,并在程序中进行转换。此转换的通用名称是“二进制十进制转换”