首页
社区
课程
招聘
汇编语言程序设计--笔记
发表于: 2006-3-24 17:20 21265

汇编语言程序设计--笔记

2006-3-24 17:20
21265
收藏
免费 0
支持
分享
最新回复 (88)
雪    币: 200
活跃值: (10)
能力值: ( LV2,RANK:10 )
在线值:
发帖
回帖
粉丝
26
1.2.1.2   基数和权
1.2.1.3   计数规则
1.2.1.3.1 二进制数
1.2.1.3.2 十六进制数  (包括1.2.1.3.2.1二进制1.2.1.3.2.2 十六进制1.2.1.3.2.3十进制)
附图两张:



感叹“数学”在此时的重要性了和曾经的我没好好学习数学基础(一碰数字和公式,脑子就不转圈了)

(作者:未知 来源:未知 摘自酷酷精品外挂)  
******进制转换*******
  对于玩修改的人来说,进制转换是不可不懂的。  
电脑上的常用进制有:2、8、10、16四种,在修改中经常接触的是2、10和16进制,基本上需要了解的是2和16互转、10和16互转,其他多了解也没亏  
2转16:  
4个2进制位为一个16进制数,2进制1111为16进制F,2进制中千位的1=8,百位的1=4,十位的1=2,个位的1=1,将各个位的数作相应转换再相加,的到的数就是10进制数0-15,可轻松转换成16进制。如01011100,可看成是两组2进制数0101和1100,则这个数就是16进制的5C。  
10转16:  
100以内一点的10转16心算比较快,复杂的用“计算器”算了。10转16用传统的计算方式可以了,就是大于15小于256的10进制数除以16为的值为十位的16进制数,其余数为个位的16进制数,没余数则个位为0。如61的16进制是3D,61除以16得3余13,3作十位数,13转成D为各位数。
16转10:
用相反的道理,将十位数乘以16加上个位数。如5A,将5乘以16得80,加上A的10进制10,结果是90。
最直接方便的方法是用windows或win95中的计算器,打开计算器,将计算器置成科学型(win95的乘法),选中十进制选择钮,输入十进制数然后选择二进制选择钮,OK!又快又准确。可是如果你想成为一个合格的程序员的话,你就必须充分了解十进制数和二进制数的特点,最好的方法是你多做一些进制转换的题目,这是程序员训练中的传统做法。
三、以十六进制作桥梁
十进制到二进制的转换实在麻烦,而且二进制数实在不易记忆和理解,你能马上感觉到一万元是多少钱,但是你能感觉到10011100010000(二进制)是多少吗?为了编程和使用方便,在二进制和十进制之间有了一座桥梁十六进制。十六进制是逢十六进一,0、1、2、3、4、5、…9、A、B、C、D、E、F、10、11、12……。到了9以后用ABCDEF表示,十六进制数与二进制数的转换非常方便。
            首先你应当牢记下表
            二进制  十六进制  
            0          0  
            1          1  
            10         2  
            11         3  
            100        4  
            101        5  
            110        6  
            111        7  
            1000       8  
            1001       9  
            1010       A  
            1011       B  
            1100       C  
            1101       D  
            1110       E  
            1111       F  
二进制数转换成十六进制数方法如下,以二进制数1101110为例:
将二进制数从右面开始以四位为一组分组,最左面不够四位的补0,按上表查得对应的十六进制数,组合起来以后就成了。
0110 1110的十六进制数是6E
十六进制转换成二进制方法如下,以十六进制数3E为例:
将十六进制的每一位转换成四位二进制数,不足四位的在左面补0,组合起来即可得到二进制数。
3E的二进制数是00111110,既是111110
当然你也可以用计算器得出结果。但也建议你熟练掌握。
也许热爱改游戏的你已经猜到,这就是你在改游戏的时候为什么总是与2A、3B、4C、5D、EF等奇怪数字打交道的原因了。它们表示的十六进制数。
怎么样够烦人的吧?我也曾经这样认为,为了进一步更好更快地掌握学习游戏编程,你必须了解这些进制转换。
2006-3-24 22:33
0
雪    币: 3519
活跃值: (4047)
能力值: (RANK:215 )
在线值:
发帖
回帖
粉丝
27
你直接打包不好吗?
2006-3-24 22:37
0
雪    币: 200
活跃值: (10)
能力值: ( LV2,RANK:10 )
在线值:
发帖
回帖
粉丝
28
1.2.1.3.3 数制间转换
3.数制间转换
1)十进制数转换二进制数;
2)十进制数转换十六进制数;
3)二进制数十六进制数互相转换;

图片略省,以后补充。
2006-3-24 22:40
0
雪    币: 200
活跃值: (10)
能力值: ( LV2,RANK:10 )
在线值:
发帖
回帖
粉丝
29
1.2.1.3.3.1 十进制数转换二进制数
附图:

没有更多例题提供,希望大家从多方面找寻例题,以学习汇编语言程序设计的重要课题--进制间的互换。

例题疑问:
3的除2的商为1,1再除2商为0,此时已没有余数。求45D的二进制数,也是这样。再多的例子也是这样的结果,为何“0”右边对应的是“1”呢。
45D的例题:
45 商 余数
   22  1
   11  0
   5   1
   2   1
   1   0
   0 “1”
最后排列:45D=101101B     
2006-3-24 22:46
0
雪    币: 200
活跃值: (10)
能力值: ( LV2,RANK:10 )
在线值:
发帖
回帖
粉丝
30
1.2.1.3.3.2 十进制数转换十六进制数
附图:


没有更多例题提供,希望大家从多方面找寻例题,以学习汇编语言程序设计的重要课题--进制间的互换。
2006-3-24 22:56
0
雪    币: 200
活跃值: (10)
能力值: ( LV2,RANK:10 )
在线值:
发帖
回帖
粉丝
31
1.2.1.3.3.1 二进制数与十六进制数的互换
附图:


没有更多例题提供,希望大家从多方面找寻例题,以学习汇编语言程序设计的重要课题--进制间的互换。
2006-3-24 23:33
0
雪    币: 200
活跃值: (10)
能力值: ( LV2,RANK:10 )
在线值:
发帖
回帖
粉丝
32
1.2.2 编码 1.2.2.1 BCD码
附图:

1.2.2.1 BCD码 附 十进制BCD码表,如下图:


另附 十进制BCD码例题 图,如下:


没有更多例题提供,希望大家从多方面找寻例题,以学习汇编语言程序设计的重要课题--进制间的互换。

2006-3-24 23:42
0
雪    币: 200
活跃值: (10)
能力值: ( LV2,RANK:10 )
在线值:
发帖
回帖
粉丝
33
1.2.2.2 ASCII码
附图:

(摘自96yx.com/tool/ASC2.htm )
       目前计算机中用得最广泛的字符集及其编码,是由美国国家标准局(ANSI)制
定的ASCII码(American Standard Code for Information Interchange,美国标
准信息交换码),它已被国际标准化组织(ISO)定为国际标准,称为ISO 646标
准。适用于所有拉丁文字字母,ASCII码有7位码和8位码两种形式。
    因为1位二进制数可以表示(21=)2种状态:0、1;而2位二进制数可以表示
(22)=4种状态:00、01、10、11;依次类推,7位二进制数可以表示(27=)128
种状态,每种状态都唯一地编为一个7位的二进制码,对应一个字符(或控制码)
,这些码可以排列成一个十进制序号0~127。所以,7位ASCII码是用七位二进制
数进行编码的,可以表示128个字符。
第0~32号及第127号(共34个)是控制字符或通讯专用字符,如控制符:LF(换行
)、CR(回车)、FF(换页)、DEL(删除)、BEL(振铃)等;
通讯专用字符:SOH(文头)、EOT(文尾)、ACK(确认)等;
第33~126号(共94个)是字符,其中第48~57号为0~9十个阿拉伯数字;65~90号
为26个大写英文字母,97~122号为26个小写英文字母,其余为一些标点符号、运
算符号等。
注意:在计算机的存储单元中,一个ASCII码值占一个字节(8个二进制位),其最
高位(b7)用作奇偶校验位。所谓奇偶校验,是指在代码传送过程中用来检验是否
出现错误的一种方法,一般分奇校验和偶校验两种。奇校验规定:正确的代码一
个字节中1的个数必须是奇数,若非奇数,则在最高位b7添1;偶校验规定:正确
的代码一个字节中1的个数必须是偶数,若非偶数,则在最高位b7添1。
为了便于查询,以下列出ASCII码表:
DEC(十进制) HEX(十六进制) CHAR(字符) CODE(控制码) C 程序(转义)
八进制        十六进制        十进制        字符        八进制        十六进制        十进制        字符       
00        00        0        nul        100        40        64        @       
01        01        1        soh        101        41        65        A       
02        02        2        stx        102        42        66        B       
03        03        3        etx        103        43        67        C       
04        04        4        eot        104        44        68        D       
05        05        5        enq        105        45        69        E       
06        06        6        ack        106        46        70        F       
07        07        7        bel        107        47        71        G       
10        08        8        bs        110        48        72        H       
11        09        9        ht        111        49        73        I       
12        0a        10        nl        112        4a        74        J       
13        0b        11        vt        113        4b        75        K       
14        0c        12        ff        114        4c        76        L       
15        0d        13        er        115        4d        77        M       
16        0e        14        so        116        4e        78        N       
17        0f        15        si        117        4f        79        O       
20        10        16        dle        120        50        80        P       
21        11        17        dc1        121        51        81        Q       
22        12        18        dc2        122        52        82        R       
23        13        19        dc3        123        53        83        S       
24        14        20        dc4        124        54        84        T       
25        15        21        nak        125        55        85        U       
26        16        22        syn        126        56        86        V       
27        17        23        etb        127        57        87        W       
30        18        24        can        130        58        88        X       
31        19        25        em        131        59        89        Y       
32        1a        26        sub        132        5a        90        Z       
33        1b        27        esc        133        5b        91        [       
34        1c        28        fs        134        5c        92        \       
35        1d        29        gs        135        5d        93        ]       
36        1e        30        re        136        5e        94        ^       
37        1f        31        us        137        5f        95        _       
40        20        32        sp        140        60        96        ,       
41        21        33        !        141        61        97        a       
42        22        34        "        142        62        98        b       
43        23        35        #        143        63        99        c       
44        24        36        $        144        64        100        d       
45        25        37        %        145        65        101        e       
46        26        38        &        146        66        102        f       
47        27        39        `        147        67        103        g       
50        28        40        (        150        68        104        h       
51        29        41        )        151        69        105        i       
52        2a        42        *        152        6a        106        j       
53        2b        43        +        153        6b        107        k       
54        2c        44        ,        154        6c        108        l       
55        2d        45        -        155        6d        109        m       
56        2e        46        .        156        6e        110        n       
57        2f        47        /        157        6f        111        o       
60        30        48        0        160        70        112        p       
61        31        49        1        161        71        113        q       
62        32        50        2        162        72        114        r       
63        33        51        3        163        73        115        s       
64        34        52        4        164        74        116        t       
65        35        53        5        165        75        117        u       
66        36        54        6        166        76        118        v       
67        37        55        7        167        77        119        w       
70        38        56        8        170        78        120        x       
71        39        57        9        171        79        121        y       
72        3a        58        :        172        7a        122        z       
73        3b        59        ;        173        7b        123        {       
74        3c        60        <        174        7c        124        |       
75        3d        61        =        175        7d        125        }       
76        3e        62        >        176        7e        126        ~       
77        3f        63        ?        177        7f        127        del       
希望大家从多方面找寻,以学习汇编语言程序设计的重要课题--进制间的互换。
2006-3-24 23:50
0
雪    币: 200
活跃值: (10)
能力值: ( LV2,RANK:10 )
在线值:
发帖
回帖
粉丝
34
1.2.3   有符号的表示方法
1.2.3.0 名词
1.2.3.1 原码
1.2.3.2 反码
1.2.3.3 补码
如图:


2006-3-25 00:01
0
雪    币: 200
活跃值: (10)
能力值: ( LV2,RANK:10 )
在线值:
发帖
回帖
粉丝
35
原码、反码、补码总结附表。
如图:



补码的表数范围:-128----+127;0在补码里有+0、-0之分;在原码和反码里只有+0;
有符号数的补码:
[X]补=X,if X >=0
[X]补=2^n-|X|, if X<0。n=8,16,32…
求负数的补码可使用取反加1 法或2^n减绝对值法。
没有更多例题提供,希望大家从多方面找寻例题,以学习汇编语言程序设计的重要课题--进制间的互换。
2006-3-25 00:02
0
雪    币: 200
活跃值: (10)
能力值: ( LV2,RANK:10 )
在线值:
发帖
回帖
粉丝
36
1.2.4   二进制运算
1.2.4.1 算术运算
1.2.4.2 十六进制算术运算
附图:

例题,如下图:



没有更多例题提供,希望大家从多方面找寻例题,以学习汇编语言程序设计的重要课题--进制间的互换。
2006-3-25 00:08
0
雪    币: 200
活跃值: (10)
能力值: ( LV2,RANK:10 )
在线值:
发帖
回帖
粉丝
37
1.2.4.3 逻辑运算
附图:

与运算:可以看成逻辑乘
或运算:加
非运算:取反
异或运算:参与的两个变量不同,得1;参与的两个变量相同,得0。
2006-3-25 00:12
0
雪    币: 200
活跃值: (10)
能力值: ( LV2,RANK:10 )
在线值:
发帖
回帖
粉丝
38
这个不错啊 学习
2006-3-25 00:13
0
雪    币: 200
活跃值: (10)
能力值: ( LV2,RANK:10 )
在线值:
发帖
回帖
粉丝
39
1.2.4.4 用补码作减法和例题1
附图:



没有更多例题提供,希望大家从多方面找寻例题,以学习汇编语言程序设计的重要课题--进制间的互换。
2006-3-25 00:16
0
雪    币: 200
活跃值: (10)
能力值: ( LV2,RANK:10 )
在线值:
发帖
回帖
粉丝
40
1.2.4.4 用补码作减法例题2和例题3
附图:


使用补码将减法转换为加法操作
[X+Y]补=[X]补+[Y]补
[[X]补]补=X

没有更多例题提供,希望大家从多方面找寻例题,以学习汇编语言程序设计的重要课题--进制间的互换。
2006-3-25 00:19
0
雪    币: 213
活跃值: (10)
能力值: ( LV2,RANK:10 )
在线值:
发帖
回帖
粉丝
41
打包吧.
这样看起来也累啊!
2006-3-25 15:33
0
雪    币: 200
活跃值: (10)
能力值: ( LV2,RANK:10 )
在线值:
发帖
回帖
粉丝
42
1.3 Intel80x86系列微处理器  1.3.1 8086/8088/80186

1.8086/8088/80186
8086:1978年推出;内外数据总线16位;地址总线20位;寻址范围1MB;主频5MHZ。
8088:1979年推出;外部数据总线8位;其余基本同8086,被称为准16位CPU。
80186:增强了8086的功能,但作为计算机的CPU没有被使用过,只作过某些板卡的控制器。

8088:1979年推出,外部数据总线8位,内部数据总线16位;其余基本同8086,被称为准16位CPU。(1979年IBM的PC机为何采用8088,而不用8086,因为当时的I/O设备是8位的。)

我也是学习者,没学完呢,我现在能做的就是边学边发。(除非你希望我学完了再整理打包发给你们) 如果这样做满足不了你的要求,那请你另寻他处。
在学习过程所碰到的问题,希望大家做个记录:
一。我不是讲师,我也是来学习的,所以解答不了你的问题;
二。整理 碰到的问题,为日后汇总做出必要的收集。希望大家能注意这点,把碰到的问题,也发给我一份。先谢谢了!@_@
三。因为我在论坛的权限问题,我每天只能上传1200K的图片,发5篇帖子,自己打字又慢, 耽误了很多课程的发布。我现在已经学到了第2章,发的内容才第1章,希望你们多多理解、谅解。
2006-3-25 19:08
0
雪    币: 200
活跃值: (10)
能力值: ( LV2,RANK:10 )
在线值:
发帖
回帖
粉丝
43
1.3.2 80286(16位CPU)
1982年推出:内外数据总线16位;地址总线24位;寻址范围16MB;主频5MHZ--20MHZ。
80286支持两种工作方式:实模式和保护模式。
实模式:相当于一个快速8086。
保护模式:提供虚拟存储管理和多任务的硬件控制。物理寻址范围16MB,虚拟存储器寻址范围可达1GB。指令系统除包含8086/80186指令外,新增15条保护方式指令。

附图略省,以后补充。
2006-3-25 20:35
0
雪    币: 200
活跃值: (10)
能力值: ( LV2,RANK:10 )
在线值:
发帖
回帖
粉丝
44
1.3.3 8086(32位CPU)
1985年推出;内外部数据总线32位;地址总线32位,物理寻址范围4GB,虚拟存储器寻址范围可达64TB。主频为16/25/33MHZ。
386除支持286的两种工作方式外,新增虚拟8086模式。虚拟8086模式的特点:
1)既具有保护功能,又能执行实模式下的8086代码,且可以实现多任务。(可同时运行多个DOS程序)
2)可以在虚拟8086模式和保护模式下快速、发福转换。指令系统兼容远16位CPU指令外,全面升级为32位指令,并新增多条指令。

附图略省,以后补充。
2006-3-25 20:47
0
雪    币: 200
活跃值: (10)
能力值: ( LV2,RANK:10 )
在线值:
发帖
回帖
粉丝
45
1.3.4 80486(32位CPU)
1.3.5 (32位或准64位CPU)
1989年推出;特点:
1。将高速缓存、协处理器与CPU集成在一个芯片上;
2。部分采用了RISC技术;
3。采用了指令流水线技术;
4。大幅度提高了CPU的主频,可达100MHZ。
1.3.5 Pentium/MMX Pentium(32位或准64位CPU)
Pentium:1993年推出;内部数据总线32位,外部数据总线64位;主频60MHZ--200MHZ;采用超标量技术。
MMX Pentium:1996年推出;主频最高233MHZ;新增57条多媒体指令,提高了多媒体软件执行速度。

附图略省,以后补充。
2006-3-25 20:57
0
雪    币: 200
活跃值: (10)
能力值: ( LV2,RANK:10 )
在线值:
发帖
回帖
粉丝
46
1.3.4.1 RISC技术
RISC技术:精简指令系统计算机技术。
其特点是:CPU的指令系统不含复杂指令,指令长度固定,指令格式种类少,寻址方式少,指令数量少(只选择使用频率很高的指令),因此,使计算机结构变得更加简单、有效、结合流水线等其他技术,使一个时钟周期完成一条指令,从而大大提高了计算机的速度。如1981年研制成RSCI I型CPU,只有31条指令,其性能却比当时最先进的商品化微处理器MC68000和Z8000快3--4倍。

附图略省,以后补充。
2006-3-25 21:03
0
雪    币: 200
活跃值: (10)
能力值: ( LV2,RANK:10 )
在线值:
发帖
回帖
粉丝
47
1.3.4.2 流水线技术
   计算机中的流水线技术和工厂中的流水装配线类似。
1。将执行一条指令需完成的操作分成若干子操作;
2。每个子操作由专门部件完成;
3。各子操作并行工作。由于子操作并行工作,提高了计算机的执行速度。(但要注意,完成一条指令所需要的时间并没有变。)(“每周期完成一条指令”和“完成一条指令需要一个周期”不同。)(超标量)
附图略省,以后补充。
1.3.4.3 流水线技术例图:
2006-3-25 21:39
0
雪    币: 200
活跃值: (10)
能力值: ( LV2,RANK:10 )
在线值:
发帖
回帖
粉丝
48
1.3.6  Pentium Pro/PII/PIII/P4
附图:
2006-3-25 21:52
0
雪    币: 200
活跃值: (10)
能力值: ( LV2,RANK:10 )
在线值:
发帖
回帖
粉丝
49
1.4    PC微型计算机系统
1.4.1  PC机的硬件
1.4.2  主存空间的分配
附图:

2006-3-25 21:59
0
雪    币: 200
活跃值: (10)
能力值: ( LV2,RANK:10 )
在线值:
发帖
回帖
粉丝
50
1.4.3 PC机的软件
附图:
2006-3-25 22:08
0
游客
登录 | 注册 方可回帖
返回
//