现在的位置: 首页 > 综合 > 正文

汇编语言程序设计01-03课程笔记

2012年12月19日 ⁄ 综合 ⁄ 共 2219字 ⁄ 字号 评论关闭

必备知识:
数字逻辑与系统设计(数字电路)
微机原理与应用

=======第一章:概述======================
1.微型计算机系统组成:硬件部分、软件部分,不可缺一。
2.ALU和控制器2大部分集成在一片IC中,就是cpu.
3.计算机衣微处理器cpu为核心,采用总线结构,在系统总线上配置一定容量的

存储器和一定数目的I/O接口电路几相对应的io设备
4.微处理器周围的引脚就是的总线,一个引脚传输2个信号,总线没条线
5.cpu要和设备通信,必须要通过相应的电路接口才能通信,比如显示器和cpu

之间,通过显卡电路来进行通信。
6.总线:就是一把导线;任何一块卡都是用导线来通信的。
7.微处理器的引脚其实就是总线,属于微处理器级的总线。即导线
8.cpu可以通过总线直接和储存器通信,但是和i/o设备则不能,不能直接传输

,之间必须设置接口电路,才能把2者连接起来。
9.

一:指令:一组二进制代码
二:指令系统:cpu能认识的所有指令的集合,cpu型号不同,其指令系统就不


三:程序:一段指令体
四:运行方法:cpu首先从存储器取指令,然后对指令代码编译,分析,执行,

最后由控制器发出所需控制信号

=======第一章:概述2======================
1.汇编语言中的语句与机器的型号密切相关。各个机器有各自的汇编语言方式
2.与高级语言的区别:X=a+b
汇编必须之处a,b存放在何处,且x结果需要放在哪个地方,然后才能实现这一

加法运算。(必须了计算机的工作原理)
3.机器语言:机器能直接认识的一种二进制代码语言;cpu能认识的一组二进制

代码就是一条指令。
4.汇编:助记符;
5.把汇编语言汇编成机器语言,cpu才能够执行。(通过汇编程序来汇编)

MASM.EXE
6.指令: 目的操作数,源操作数 ==》如果有2个操作数,中间用逗号隔开
7.ADD AX , 002H ==> 把AX+002H,加成的和返回到AX中存放
8.汇编,反汇编==》把机器反成汇编程序语言
9.汇编,编译后代码长度最短,放到存储机子里面空间也最少,因此cpu取的趟

数也是最少的,因此cpu运行最短;
1.汇编在对机器底层的编程,还有很有利的。
2.位,字节,字(2字节),双字(2字),千字节k,
3.一个字中,左边是“低字节”,右边是“高字节”
4.存储器中的单位是“字节”
5.按权展开求和,就是进制的转换。

===================第3课:进制转换,补码,源码====================
一。十进制 -- 任意进制数的转换
1.整数部分的转换:N/P取余 301转16,
301/16 ==>D
18/16 ==>2
1/16 == >0

301/2 ==> 1
150/2 ==> 0
37/2 ==> 1

取余数后,从下往上念,那就是转换后的结果。
2.小叔部分:N*p取整数
0.6875*2=1.375 ==> 1
0.375 *2=xxx
==> xx

二。任意进制数 --》 十进制数的转换规则
1.安权展开相加即可

三。二进制--》 十六进制数转换
1001|0101|0100.1010|0111|1
= 1 2 5 A. A 7 8 

四。二进制数的算术运算
1.加法:跟十进制一样,逢2进一呗。减法:也一样,向前借一位。
2.逻辑运算:与,或,异或,非
 与 ,与0相与为0,&
 或 ,

雨:与0相与都得0
或:与1相或都得1
异或:不同数得1,相同数得0
非:

六。有符号数二进制的表示方法
1.最高位是符号位:0表示正数,1表示负数。
2.原码表示:就是一个数,他的最高位为符号位,以下是数据位。
  注意:如果计算机中数据用原码表示,那么正0和负0就有2种表示方法,这就

是一个问题。因为0从来就不分正负。
所以带符号数肯定不能用原码表示。
3.有符号二进制用原码表示的缺点:复杂化,速度慢,0问题,所以出现了补码

表示法。

4.补码表示法:
1.当 x为整数的时候,其补码就是其原码
2.当x为负数的时候,其补码=2n+x,所有只有负数的时候有具有求补的运算。
 但是更方便的求补方法是:
一个负数的补码等于其原码除符号位保持不变,其余各位安位取反,再在最低

位加1即可。
(这种方法,对于计算机来说更方便,更快速)
 同时,0的补码只有唯一的形式,这个0问题就解决了。
3.一个负数的补码,再对他本身求补,就可得到其原码咯。嘻嘻

七:计算机是采用补码表示的。
1.有符号用补码表示的范围: 2(n-1) <= X <= 2(n-1)  -1
x=8,===> -128 ~~ 127
x=16,==> -32768 ~~ 32767
2.如果运算时,结果超出该存储单位所能表示的范围,那么就叫溢出。
 正数+正数=负数;表示益处。
+72 + +98 = +170  》 +127
0 1 00 1 000 B
0 1 10 0 010 B
------------------
1 0 10 1 010 B这里已经像符号位进位了,所以为负数了。

 负数+负数=正数:表示益处
-83 + -80 = -163 《 -128
 1 0 1 0 1 1 0 1 B
 1 0 1 1 0 0 0 0 B
------------------
 0 1 0 1 1 1 0 1 B

符号位相加,导致符号位进位。。导致变成了整数,这就能判断是溢出。
===============
八:二进制转换为BCD编码:4个一组来表示
二进制:0010 0100
BCD编码:2    4

========
久:ASCII字符代码
用7位二进制代码对任意字符编码,他的第8位永远是0.
128个:1.32个通用控制符
2.0-9 10个数字
3.52个英文大小写
4.34个专用字符

抱歉!评论已关闭.