• linkedu视频
  • 平面设计
  • 电脑入门
  • 操作系统
  • 办公应用
  • 电脑硬件
  • 动画设计
  • 3D设计
  • 网页设计
  • CAD设计
  • 影音处理
  • 数据库
  • 程序设计
  • 认证考试
  • 信息管理
  • 信息安全
菜单
linkedu.com
  • 网页制作
  • 数据库
  • 程序设计
  • 操作系统
  • CMS教程
  • 游戏攻略
  • 脚本语言
  • 平面设计
  • 软件教程
  • 网络安全
  • 电脑知识
  • 服务器
  • 视频教程
  • JavaScript
  • ASP.NET
  • PHP
  • 正则表达式
  • AJAX
  • JSP
  • ASP
  • Flex
  • XML
  • 编程技巧
  • Android
  • swift
  • C#教程
  • vb
  • vb.net
  • C语言
  • Java
  • Delphi
  • 易语言
  • vc/mfc
  • 嵌入式开发
  • 游戏开发
  • ios
  • 编程问答
  • 汇编语言
  • 微信小程序
  • 数据结构
  • OpenGL
  • 架构设计
  • qt
  • 微信公众号
您的位置:首页 > 程序设计 >汇编语言 > 计算机中数和字符的表示

计算机中数和字符的表示

作者:汇编爱好者 字体:[增加 减小] 来源:互联网 时间:2017-06-17

汇编爱好者通过本文主要向大家介绍了计算机中的字符,计算机字符编码,计算机字符,计算机字符集,微型计算机字符编码等相关知识,希望对您有所帮助,也希望大家支持linkedu.com www.linkedu.com
</div>

    一、带符号二进制数表示

    1、什么是字长?

    计算机数据线一次能传送的最大的二进制数的位数。常用的字长:

    8位、   16位、     32位

    ↓       ↓        ↓

    Z80      IBMPC      80386

    Apple      PC/XT      80486

    PC/AT

    2、无符号二进制数

    在字长范围内,所有二进制位都是数值位。

    字长8位: 0~255           00H~FFH

    字长16位: 0~65535    0000H~FFFFH

    字长32位: 0~4294967295  0000 0000H~FFFF FFFFH

    3、有符号二进制数

    在字长范围内,最高二进制位为符号位,其余位为数值位。

    字长8位:数值范围  80H~7FH    -128~+127

    字长16位:     8000H~7FFFH  -32768~+32767

    字长32位:   8000 0000H~7FFF FFFFH  -2147483648~+2147483647

    二、带符号数的补码表示

    在计算机中,任何一个带符号数,都是以补码的形式进行存贮和管理的。

    1、带符号数的原码表示

    最高位为符号位,其余位是数值位。

    [+121]原= 0111 1011       0000000001111011

    [-121]原= 1111 1001       1000000001111001

    [+0]原= 0000 0000        0000000000000000

    [-0]原= 1000 0000        1000000000000000

    2、补码表示

    (1)正数,同原码

    (2)负数,原码的每一位(符号位除外)取反,再在末位加1

    例:字长8位,求-11的补码

    原码         1000 1011

    各位取反     1111 0100

    末位加1      1111 0101

    例:字长8位,求-0的补码

    原码        1000 0000

    各位取反    1111 1111

    末位加1     0000 0000

    还有一种办法可以写出一个负数的补码:

    令,则[x]补码=,     n是字长的位数

    例:  [-1]补=    = 1111 1111

    [-127]补=  = 1000 0001

    [-64]补=  =  1100 0000

    [-5]补=   =  1111 1011

    [-128]补=  =  1000 0000 

    3、由补码求真值(补码对应的十进制数)

    原码就是数字本身,例如:

    (+7)的原码=0000 0111 最高位为符号位(0表示正数)

    (–7)的原码=1000 0111 最高位为符号位(1表示负数)

    反码就是将原码按位求反(符号位不变),例如:

    (+7)的反码=0111 1000 符号位不变

    (–7)的反码=1111 1000 符号位不变

    从计算机运算的角度来讲,“符号位不变,将原码求反再加一”的算法是很方便的,但对于读者理解补码的概念没有多大帮助。

    例如:求(–7)的补码。

    

    注意:当负数以补码的形式表示时,求该数的原值仍用“求反再加一”的方法,例如,

    

    如果是正数,就不能用上述方法。正数的补码就是该数的本身,所以本书中不引入“正数的补码就是原码”的概念。

    其实补码是针对负数来说的,计算机中只有加法器(没有减法器),引入补码的目的是为了将减法计算变为加法计算。

    有了只有负数才有补码的概念后,我们就可将注意力放在负数上。让我们以时钟来说明补码的概念,见表1-1。

    表  1-1

   时    间

           逆时针时间

   0(12)

  (–12)    (–12)的补码 = 12 – |–12| = 

1

  (–11)    (–11)的补码 = 12 – |–11| = 

2

  (–10)    (–10)的补码 = 12 – |–10| = 

3

  (–09)     (–9)的补码 = 12 – |–09| = 

4

  (–08)     (–8)的补码 = 12 – |–08| = 

5

  (–07)     (–7)的补码 = 12 – |–07| = 

6

  (–06)     (–6)的补码 = 12 – |–06| = 

7

  (–05)     (–5)的补码 = 12 – |–05| = 

8

  (–04)     (–4)的补码 = 12 – |–04| = 

9

  (–03)     (–3)的补码 = 12 – |–03| =

10

  (–02)     (–2)的补码 = 12 – |–02| = 

11

分享到:QQ空间新浪微博腾讯微博微信百度贴吧QQ好友复制网址打印

您可能想查找下面的文章:

  • 计算机中数和字符的表示

相关文章

  • 2017-06-28MASM的反反汇编技术
  • 2017-06-1780386/80286处理的数据类型
  • 2017-06-28LEA指令的妙用
  • 2017-06-28WIN98SE硬盘主引导记录代码反汇编分析
  • 2017-06-28如何在弹出菜单的同时再次弹出菜单
  • 2017-06-17打印I/O
  • 2017-06-17汇编程序功能
  • 2017-06-28汇编语言的艺术-观念正误(一)
  • 2017-06-28汇编教程:使用语句
  • 2017-06-28汇编源码系列之clock

文章分类

  • JavaScript
  • ASP.NET
  • PHP
  • 正则表达式
  • AJAX
  • JSP
  • ASP
  • Flex
  • XML
  • 编程技巧
  • Android
  • swift
  • C#教程
  • vb
  • vb.net
  • C语言
  • Java
  • Delphi
  • 易语言
  • vc/mfc
  • 嵌入式开发
  • 游戏开发
  • ios
  • 编程问答
  • 汇编语言
  • 微信小程序
  • 数据结构
  • OpenGL
  • 架构设计
  • qt
  • 微信公众号

最近更新的内容

    • 中央处理机CPU的组成
    • 汇编源码系列之getspace
    • hello,world!win32汇编小程序
    • 动态VXD学习
    • V86模式切换程序
    • 汇编语言的艺术-准备工作(五)
    • 串行通信口I/O
    • Mixer Volume Ctrler V1.0
    • 汇编教程:连接数据源
    • 子程序的嵌套

关于我们 - 联系我们 - 免责声明 - 网站地图

©2020-2025 All Rights Reserved. linkedu.com 版权所有