刚开始学单片机时,因为没有数字电路和微机原理的根底,许多概念都不是很清楚,特别是在学习单片机原理的时分,那些概念弄得烦不堪烦。特别是什么寄存器、寻址、地址、指针……都快把我折磨得疯掉了。想抛弃又觉得不甘心,于是就硬着头皮狂啃了几天,才有点了解。现将心得记载如下,才干有限,如果有过错或缺乏请纠正。
CPU履行指令进程:由程序存储器(ROM)中读取指令代码,送入指令寄存器中,经过译码器译后由守时于操控电路宣布相应的操控信号,完结操控功用。
程序计数器(PC):寄存即即将履行的指令地址的当地。
寄存器:寄存器是CPU在运算进程中用于寄存操作数的当地。适当与一个加工厂的货品暂时寄存点。在这货品暂时寄存点里寄存有一些货品即操作数。CPU没履行一次运算和指令都会从里面提取操作数履行指令。CPU中若干个不同的寄存器。能够从不通的寄存器中提取不同的操作指令进行操作。
存储器:存储器就适当余个库房,是存储数据的当地。CPU经过指令对存储器进行拜访。
指针:这真就适当一个地址,即库房里面寄存货品的地址。和我么寄信的地址相同,经过他能够寻觅到想要的数据或许指令。
当即数:当即数便是寄存在寄存器中的常数。
知道这些今后,关于单片机的寻址方法的了解就没有多大问题。单片机的寻址方法主要有五种:当即数寻址、存储器肯定寻址、寄存器直接寻址、寄存器直接寻址、寄存器变址寻址。
当即数寻址:将某一当即数直接赋予到寄存器傍边。适当于将一份货品拿的指定货品暂时寄存点上去。
存储器肯定寻址:将存储器地址指定的操作数赋予到寄存器傍边。这种寻址方法和当即数寻址方法不通,同样是直接将操作数直接赋予寄存器傍边,但方法不相同,当即数寻址是直接将操作数赋予寄存器。而直接寻址却是拿到的仅仅一个操作数地址,经过这个地址,在存储器中寻觅到想要的操作数后,再将操作数赋予寄存器。这个适当于你拿到库房货品地址后,在库房里找到货品,然后将货品拿到指定的货品暂时寄存点上。
寄存器直接寻址:这种方法是指操作数寄存在寄存器中,直接经过寻址寄存器,取出操作数。这中方法适当直接将特定货品暂时寄存点里的货品装车进行处理。
寄存器直接寻址:这种方法是寄存器里寄存的是操作数在存储器里寄存的地址。经过那在指定的寄存器里拿到地址后,再经过地址到存储器中寻觅到相应的操作数,然后履行操作数。这种方法适当于该货品暂时寄存点寄存的并不是货品,而仅仅货品在库房存储的地址,咱们还得经过地址到库房去寻觅到货品,然后再进行加工。
寄存器变址寻址:这种寻址方法比较复杂,且很费事,好像是故意在绕路相同,难为人。他首要给定一个基址寄存器,并在基址寄存器中寄存一个数据,然后再给你一个公式和一个操作数,公式是:意图寄存器=基址寄存器中数据+给定操作数。经过计算出公式成果后才干找到意图寄存器傍边的操作数。这就适当于找东西的游戏,不告知你要找的东西在那你,仅仅给你一个谜语,你靠着这个谜语的谜底去寻觅所要寻觅的东西。
程序计数器(PC):寄存即即将履行的指令地址的当地。
寄存器:寄存器是CPU在运算进程中用于寄存操作数的当地。适当与一个加工厂的货品暂时寄存点。在这货品暂时寄存点里寄存有一些货品即操作数。CPU没履行一次运算和指令都会从里面提取操作数履行指令。CPU中若干个不同的寄存器。能够从不通的寄存器中提取不同的操作指令进行操作。
存储器:存储器就适当余个库房,是存储数据的当地。CPU经过指令对存储器进行拜访。
指针:这真就适当一个地址,即库房里面寄存货品的地址。和我么寄信的地址相同,经过他能够寻觅到想要的数据或许指令。
当即数:当即数便是寄存在寄存器中的常数。
知道这些今后,关于单片机的寻址方法的了解就没有多大问题。单片机的寻址方法主要有五种:当即数寻址、存储器肯定寻址、寄存器直接寻址、寄存器直接寻址、寄存器变址寻址。
当即数寻址:将某一当即数直接赋予到寄存器傍边。适当于将一份货品拿的指定货品暂时寄存点上去。
存储器肯定寻址:将存储器地址指定的操作数赋予到寄存器傍边。这种寻址方法和当即数寻址方法不通,同样是直接将操作数直接赋予寄存器傍边,但方法不相同,当即数寻址是直接将操作数赋予寄存器。而直接寻址却是拿到的仅仅一个操作数地址,经过这个地址,在存储器中寻觅到想要的操作数后,再将操作数赋予寄存器。这个适当于你拿到库房货品地址后,在库房里找到货品,然后将货品拿到指定的货品暂时寄存点上。
寄存器直接寻址:这种方法是指操作数寄存在寄存器中,直接经过寻址寄存器,取出操作数。这中方法适当直接将特定货品暂时寄存点里的货品装车进行处理。
寄存器直接寻址:这种方法是寄存器里寄存的是操作数在存储器里寄存的地址。经过那在指定的寄存器里拿到地址后,再经过地址到存储器中寻觅到相应的操作数,然后履行操作数。这种方法适当于该货品暂时寄存点寄存的并不是货品,而仅仅货品在库房存储的地址,咱们还得经过地址到库房去寻觅到货品,然后再进行加工。
寄存器变址寻址:这种寻址方法比较复杂,且很费事,好像是故意在绕路相同,难为人。他首要给定一个基址寄存器,并在基址寄存器中寄存一个数据,然后再给你一个公式和一个操作数,公式是:意图寄存器=基址寄存器中数据+给定操作数。经过计算出公式成果后才干找到意图寄存器傍边的操作数。这就适当于找东西的游戏,不告知你要找的东西在那你,仅仅给你一个谜语,你靠着这个谜语的谜底去寻觅所要寻觅的东西。