汇编网首页登录博客注册
scuzg的学习博客
博客首页博客互动【做检测题】论坛求助

我的博客

个人首页 |  我的文章 |  我的相册 |  我的好友 |  最新访客 |  文章收藏 |  论坛提问 |  友情链接 |  给我留言  
图片载入中
友情链接

[2009-10-26 08:27] 推荐博文 我们的手指和二进制数(位串、位序列)

存储于计算机内的各种二进制数,严格意义上应该称作二进制位串(或位序列),这些二进制位串可能是数,也可能是编码(比如ASC码、汉字内码等)或机器指令。
    用简单的二进制位串表现内涵迥异的内容是我们不熟悉和容易迷惑的,但想想我们的手指就会感到释然:手指不仅可以表示数,也可以表示OK、WC、“你真棒”、“石头、剪子、布”、证券交易所、特警突击队以及划拳用的手势等。
    面对一个孤立的二进制位串,我们是无法确定它究竟是数、是码还是指令的。比如一个目标程序,其内容显然是机器代码,但当对该程序进行传送或加密处理时,这些代码就成了被其他程序处理的数据。这和我们的手势又很类似:竖起食指和中指,可以是 2、“剪子”,也可以是“victory”表示顺利等。可见,一个二进制位串究竟是什么,这是由编程者对它的使用确定的。
    初学的朋友往往会问怎样“区分”无符号数和带符号数,其实两者在形式上是没有区别的,区别就在你的心里:如果你将二进制的最高位视为符号位,就是带符号数;如果将其看作是一个有效数位而不是符号位,则为无符号数。
    当 CPU 处理一个二进制数时,其实也弄不清楚这个数是有符号还是无符号数;由于引入了补码,使得加减计算的指令对有符号数和无符号数的处理是一样的,所以在进行加减运算时, CPU 将运算结果作为有符号数和无符号数对符号位的影响都“罗列”出来了,供编程者根据需要使用。
评论次数(4)  |  浏览次数(1767)  |  类型(汇编语言) |  收藏此文  | 

[  mess   发表于  2009-10-27 15:46  ]

写的不错,帮顶

[  游客   发表于  2009-10-29 09:39  ]

好生动、细腻,
把技术与生活对照思考,
Tom.Cat导师真细心,思想严谨,
向前辈学习。
                    --小学生:漂舟

[  游客   发表于  2009-10-29 10:04  ]

Tom老师,今日得高人引见,才看到你的文章, 让我对汇编语言有了更深刻、形象的了解。以后要向你多多学习,另外我对你的项目或公司管理能力与经验更是崇拜,是不是有空也给我们讲解一些简单的东西呢?
                         
                       --IT混混:xjc

[  scuzg   发表于  2009-10-29 12:02  ]

谢谢各位小朋友的鼓励!

 
 请输入验证码  (提示:点击验证码输入框,以获取验证码