写程序是枯燥的,要学会给自己找点乐子,我将不定期的将我看到的比较有意思的事情、笑话、句子分享在博客中,希望给各位带来些许欢乐.
( 某移动老总寻欢,小姐报价五百。完事后要1400,老总不解。小姐笑道:双向收费,进五百,出五百;刚才睡8号床,交一百选号费;超45分钟,收一百元超时费;叫了床,收一百元彩铃费;您是外地人,交一百漫游费。你经常来建议你办个炮费套餐划算,“洞感地带”就比较适合,我的地盘您作主!)
正文:
好了,言归正传,关于汇编语言的学习,我参考的是王爽写的《汇编语言》第二版.将所学的重要知识点、指令在博客上记录下来.
机器语言是操作计算机的唯一方式,机器语言是由一列二进制数组成,计算机将之转变成为一列高低电平,驱动电子器件,进行运算.汇编指令通过编译器转换为机器指令,每一条汇编指令都会有对应的机器指令.
计算机的核心部件是CPU,内存负责将指令和数据送入CPU使其工作.内存中的指令和数据没有任何区别,都是二进制信息.CPU在工作的时候动态的去区分它们.
存储器(内存)被分成若干个存储单元,每个单元编号从0开始.
1B = 8bit 1KB = 1024B 1MB = 1024KB 1GB = 1024MB 1TB = 1024GB
电子计算机中能处理、传输的信息都是电信号,电信号通过导线传送,导线可以分为三类(地址总线、数据总线、控制总线);
地址总线:决定CPU的寻址(每个内存单元都会对应一个地址)能力。一个CPU有N根地址线,则这个CPU最多可以寻找2的N次方个内存单元。
数据总线:CPU与内存或其它器件通讯的桥梁.一根数据总线传送一位二进制数(1bit).
控制总线:CPU通过控制总线控制外部器件。
检测点 1.1:
(1) 1个CPU的寻址能力为8KB,那么它的地址总线的宽度为: ?
我们知道一个CPU有N根地址线,则这个CPU最多可以寻找2的N次方个内存单元(B),则 8KB =1024 * 8 B = 2 的 13 次方B。N = 13因此它的地址总线宽度为 13;
(2)1KB的存储器有 ? 个存储单元.存储单元的编号从 ? 到 ? .
一存储单元为1B,又有 1KB = 1024 B 因此 1KB存储器有 1024个单元,每个单元编号都从0 开始并以1为增量递增,因此这个存储单元编号从 0 到 1023.
(3) 1KB的存储器可以存储 ? 个bit, ? 个Byte.
1B = 8bit 1KB = 1024B 1MB = 1024KB 1GB = 1024MB 1TB = 1024GB,1KB换算一下可以知道为 1024 * 8 个bit,1024 Byte(B 为Byte的简写)
(4)1GB,1MB,1KB分别是 ? ? ? Byte。
如上题, 1024 = 2^10 故 1GB= 2^30 1MB = 2^20 1KB = 2^10 (2^3 表示2的3次方)
(5)8080、8088、80286、80386的地址总线宽度分别为 16根、20根、24根、32跟,则它们的寻址能力分别为?KB、?MB、?MB、?GB.
他们的寻址能力分别为 2^16 B 、2^20 B 、2^24 B 、 2^32 B 转换后答案为: 2^6(64)KB 、 2^0(1)MB 、2^4(16)MB 、2^2(4)GB.
(6)8080、8088、8086、80286、80386 的数据总线宽度分别为 8根、8根、16根、16根、32根.则它们一次可以传送的数据为: ? B 。
一根数据总线可以传送一位2进制数(1bit),1 B = 8bit 因此: 1B、1B、2B、2B、4B;
(7)从内存中读取1024字节的数据,8086至少要读 ? 次,80386至少要读 ?次.
8086、80836的数据总线分别为: 16根、32根, 它们一次可以传送的数据为: 2B、4B,因此1024B的数据它们至少要读 1024 / 2 = 512 = 2^9 次、 1024/4=256=2^8 次.
(8)在存储器中,数据和程序以 二进制 形式存放.