【问题标题】:Representation of numbers in the computer计算机中数字的表示
【发布时间】:2016-05-25 05:11:11
【问题描述】:

在计算机中的输入表示中,数字被视为字符并用 Ascii 代码编码,还是直接转换为二进制?换句话说:当我的输入被认为是整数而不是字符时?

【问题讨论】:

    标签: binary numbers ascii representation


    【解决方案1】:

    两者都是可能的,这取决于应用程序。换句话说,软件程序员决定。一般来说,二进制表示在存储要求和处理速度方面更有效。因此二进制表示更为常见,但有一些很好的例子表明将数字保存为字符串会更好:

    • 避免转化问题
    • 电话号码
    • 当没有足够的二进制表示可用时(例如 100 位 pi)
    • 不进行处理的号码
    • 待续...

    【讨论】:

    • 好的,谢谢@bogl 回答了我的部分问题,我知道现在什么时候最好使用字符,但仍然不清楚我的处理器将对我的输入进行编码,我想我应该问一下反相,它是如何解码的,它如何知道110000是字符'0'还是数字48,1100001是字符'a'还是数字97?
    • 处理器对此一无所知。它将把所有东西都当作一个数字来处理。假设在内存某处的某个字节中存储了数字 97。为了在屏幕上显示这个值,它必须以某种方式转换为像素。通常首先将字节转换为字符串。那可能是“a”或“97”,或其他东西。这是编码到软件中的。
    【解决方案2】:

    电子数据最基本的组成部分是位。它只能有 2 个值,0 和 1。其他数据结构是由位集合构建的,例如 8 位字节或 32 位浮点数。

    当需要使用一组比特来表示一个字符时,使用某种编码来赋予这些比特词义,例如ASCII、UTF8等。

    当您想在屏幕上显示字符信息时,您可以使用图形层将表示“字符”(具有匹配编码的位集合)的像素绘制到屏幕上。

    【讨论】:

    • 好的@Amit 但是,我的计算机如何知道这个组 110000 是 0 还是数字 48?
    猜你喜欢
    • 2012-01-24
    • 2010-12-31
    • 1970-01-01
    • 2012-08-13
    • 2022-01-12
    • 1970-01-01
    • 1970-01-01
    • 2011-01-03
    • 1970-01-01
    相关资源
    最近更新 更多