我不明白汇编如何与 ASCII 一起工作?

发布于 2024-08-06 03:47:32 字数 136 浏览 2 评论 0原文

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

I have a program that's supposed to take values and print them back out. But when the user enters something like 12, (C in HEX) the program prints out some weird letter, that I think is the representation in ASCII. Is there a way to make it save those numbers as raw numbers? I'm doing the input and output through an external library, so I don't know if that has anything to do with it.

如果你对这篇内容有疑问,欢迎到本站社区发帖提问 参与讨论,获取更多帮助,或者扫码二维码加入 Web 技术交流群。

扫码二维码加入Web技术交流群

发布评论

需要 登录 才能够评论, 你可以免费 注册 一个本站的账号。

评论(1

暮倦 2024-08-13 03:47:32

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

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

您需要弄清楚(希望文档说明)您的输入库需要什么格式以及您的输出库提供什么格式,并在程序中在它们之间进行转换。这种转换的通用名称是“二进制-十进制转换”

There are multiple ways to store a number inside of a computer. The main ones are:

  • As a native, binary number. The number 123 will be stored as the octets: 0x7b, with zero-padding if using a larger than one byte integer. Zero-padding could be on either the left (big-endian machine) or the right (little-endian machine).
  • As a string. 123 will be stored as 0x31 32 33, assuming ASCII/Latin1/UTF-8. There may be either a length field first (stored as a native binary number) or a zero-byte (0x00) afterwards to indicate where the string ends.
  • BCD. 123 will be stored as 0x01 23. The bytes may also be stored in little-endian order, as 0x23 01.

You'll need to figure (hopefully the documentation says) out what format your input library wants and what format your output library provides, and convert between them in your program. The general name for this conversion is "binary-decimal conversion"

~没有更多了~
我们使用 Cookies 和其他技术来定制您的体验包括您的登录状态等。通过阅读我们的 隐私政策 了解更多相关信息。 单击 接受 或继续使用网站,即表示您同意使用 Cookies 和您的相关数据。
原文