回 帖 发 新 帖 刷新版面

主题:汇编菜鸟这里看  第一课

我是一个学习了三个星期就想写病毒的那种小菜鸟,等我把课程学完后,才发现自己的想法很幼稚,大家要记住,学习是循序渐进的,要学好汇编,我们就必须安步就班
好了,废话少说,我 写这个课程没什么别的目的,就是觉得现在想学汇编的人很多,但是由于方法不得当,可能还没有入门,之下是小弟的一点建议 希望能够帮助大家(大家扔白菜吧。。) 得了,现在我们开始正题吧(你小丫,还真没完没了)
                                 第一章
第一节:首先,我们来看看机器语言,如果要求 S=738+13288-1280
   机器码 如下 11011011011101010101001010100101   (32个)
               11011011011101010101001010100101
               11011011011101010101001010100101(这是乱写的不过有这么多个)
如果你要在屏幕上面显示 hello,world 你知道有多少个二进制吗
我大概看了看,好象有个千把来个(大哥,我眼花)
想一想,如果冒个0或冒个1出现错误,我们应该怎么修改呢!这时伟大的汇编语言baby的出生了
 第二节:
 一个机器指令1000100111011000表示,把寄存器BX的内容送到AX中
  在汇编里面,就可以写成 MOV AX,BX
这样你的头也许就不会象刚才那么大了吧!!
说到这里我们要补充一下知识 ,那就是关于寄存器的
(寄存器,简单的说就是CPU中可以存放数据的零件,后面我们详细介绍各个寄存器,AX其实就是一个寄存器的代号)
我们知道计算机 只能识别机器语言,那么它如何来识别我们的汇编语言呢,这时,我们就需要一个翻译家 即 把汇编语言变成机器语言

汇编语言的分类:
1  汇编指令  即机器码的助记符,有对应的机器码
2   伪操作    无对应的机器码,由编译器来执行(呵呵!大家是不是已经爬到乐啊|我刚刚学习的时候也差不多,其实我现在就想爬下来。有时候学习就是这样的,大家不要心急,欲速则不达)
3   其他符号  + - * /  无对应的机器码,由编译器来执行

好了 前面的废话讲了一半(不会啊吧!晕到一大片耶!!)


接着,我们来看看,存储器
我们知道CPU是计算机核心部件,它就是用来计算数据的,如果要想让CPU工作的话,那么你就必须向里面提供响应的指令和数据(这一点大家要记主),那么这些指令和数据又是存放在那里的呢!!有人立刻回答:不就是存储器这小丫么。回答正确 加 10分。(低下的人无语了)
这样 我们就知道了,如果CPU读不到 数据和指令的时候,就不能正常进行工作乐

那下面我们来说说 数据和指令吧
数据和指令是存放到内存里面的(严格的说应该是存储器,因为说内存,大家一般只会想到内存条,其实在其他的芯片里面也有存储器的)
在内存里面,对于指令和数据,他们是一样的,即都是八个二进制的数字
在CPU里面,就不同了,对于有的数据可以当指令,有的数据也可以数据看的
1000100111011000 就是MOV AX,BX
1000100111011000 就是89D8H  那么我们这个时候就要想到,什么时候当指令呢,什么时候当数据呢

下面 我们继续废话(菜鸟都用愤怒的眼光看着我,完了,今天要是不说完废话,就要挂了)
存储单元   这就是5个存储单元  每个存储单元里面能装八个二进制的数据
_______     每个存储器有可以划分多个存储单元的   旁边的编号就是它的地址(就
|_____|0     当做门牌号吧,CPU要找冒个单元就要找它的门牌号)  
|_____|1
|_____|2
|_____|3
|_____|4

CPU对内存的访问
当CPU对内存访问的时候必须找出存储器的地址(地址信息)
找到以后 我们要是要向这个内存里面读信息,还是写信息(控制信息)
得到数据或者写入数据(数据信息)
从上面看的出来,CPU和存储器进行了三种交换  这里我们只需要了解

从 这个列子来观察
如果CPU要向3号单元里面读出数据,那么它要进行三步
同过地址总线来找到3号单元  通过控制总线来说名是来读取信息的,通过数据总线把里面的数据读出
(这里补充一下知识,地址总线如果有十跟的,那么它就只能寻址2的十次方也就是0-1024这样的地址,在看看数据总线,如果有十根的,那么一次只能传输最大1024这样的数据,对于控制总线,根数越多,说明CPU对外部器件就会有多少种控制)
今天我先说到这里
希望小弟能给各位菜鸟一点点帮助
最后我们必须来回忆一下,你到底明白了什么
我们从机器语言说到了汇编语言,我们知道了汇编语言它一共有三种
我们又从汇编语言说到CPU是如何进行数据运算,然后我们又知道了CPU是从什么地方来得到数据的,接着我们开始接触了内存,分析了内存的存储结构,接着,通过一个列子,我们知道了当CPU要进行数据读取和写入数据时候的过程,接着,我们又学习到了 ,地址总线,数据总线,和控制总线,
一个数据总线如果是十六 那么它一次就可以传输两个字节的数据
一个地址总线如果是十六 那么它可以寻址的最大单元就是2的16次方








回复列表 (共2个回复)

沙发

这个里面少了一些内容吧  好象不完善啊 中间缺少了一些段   请楼主不全  
如果是转贴 给出原网址也可以  谢谢

板凳


刚发表的啊?/呵呵!@

LZ是高手吗?/

我是这个学期开始学的!!!

现在学了半个学期了.但是还是不会!!!

我来回复

您尚未登录,请登录后再回复。点此登录或注册