1、可以使用[...]来进行内存单元寻址的寄存器
bx,si,di,bp
2、bx、bp、si、di只能单个使用或者bx+(si/di) bp(si/di)这么使用
3、只要是使用了bp寄存器,则默认段地址存放在ss中,其他默认段地址存放在ds...
[2019-09-19 13:48] 第八章 8.1
阅读全文 |
评论次数(1) |
浏览次数(564) |
所属类型(默认类型)
[2019-09-10 17:05] 第五章
在汇编源程序中,如果用指令访问一个内存单元,则在指令中必须用"[...]"来表示内存单元(是数据不是地址的意思);如果在"[...]"中用一个常量idata直接给出内存单元的偏移地址,就要在"[...]"的前面显示的给出段地址所在的段寄存器,如果没有给出,则表示是数据不是地址;或者通过"[寄存器]"来表示偏移地址,这时候默认的段寄存器就是ds...
阅读全文 |
评论次数(0) |
浏览次数(469) |
所属类型(默认类型)
[2019-09-06 17:34] 第三章
3.7
1、栈顶的段地址放在ss寄存器中,偏移地址放在sp寄存器中;任意时刻,ss:sp指向栈顶元素。
2、push过程先移动sp指针,再操作数据
pop过程先操作数据,再移动指针;pop之后原栈顶数据并不会被删除,应该是只会被覆盖吧
注意:
1、8086cpu并不会对栈顶超界做判断
2、debug的t命令在执行修改寄存器ss的指令时,下一条指令也紧接着被执行。原因是中断机制,后面学了再来补充...
1、栈顶的段地址放在ss寄存器中,偏移地址放在sp寄存器中;任意时刻,ss:sp指向栈顶元素。
2、push过程先移动sp指针,再操作数据
pop过程先操作数据,再移动指针;pop之后原栈顶数据并不会被删除,应该是只会被覆盖吧
注意:
1、8086cpu并不会对栈顶超界做判断
2、debug的t命令在执行修改寄存器ss的指令时,下一条指令也紧接着被执行。原因是中断机制,后面学了再来补充...
阅读全文 |
评论次数(0) |
浏览次数(417) |
所属类型(默认类型)
[2019-09-06 16:23] 第三章(不知道理解的对不对,还有大佬来给瞅瞅啊)
1、mov指令使用规则:
mov 寄存器,数据
mov 寄存器,寄存器
mov 寄存器,内存单元
mov 内存单元,寄存器
mov 段寄存器,寄存器
mov 寄存器,段寄存器
mov 内存单元,段寄存器
mov 段寄存器,内存单元
2、add、sub指令使用规则:
add、sub指令只能用于寄存器和内存单元,或者寄存器和数据之间(单向)
总结:段寄存器之间不能交换数据,段寄存器不能和数据直接进行交互,数据间的计算只能在寄存器和内存单元中进行,或者寄存器和数据之间单向进行。这样的意思应该是段寄存器只接受赋值或者被赋值操作,外部数据想赋值给寄存器,必须通过寄存器或者内...
mov 寄存器,数据
mov 寄存器,寄存器
mov 寄存器,内存单元
mov 内存单元,寄存器
mov 段寄存器,寄存器
mov 寄存器,段寄存器
mov 内存单元,段寄存器
mov 段寄存器,内存单元
2、add、sub指令使用规则:
add、sub指令只能用于寄存器和内存单元,或者寄存器和数据之间(单向)
总结:段寄存器之间不能交换数据,段寄存器不能和数据直接进行交互,数据间的计算只能在寄存器和内存单元中进行,或者寄存器和数据之间单向进行。这样的意思应该是段寄存器只接受赋值或者被赋值操作,外部数据想赋值给寄存器,必须通过寄存器或者内...
阅读全文 |
评论次数(0) |
浏览次数(437) |
所属类型(默认类型)
[2019-09-06 15:39] 第三章
3.2
1、8086cpu自动读取ds寄存器中的数据作为内存单元的段地址;
2、8086cpu不支持将数据直接送入段寄存器,但可以将寄存器中的内容送入段寄存器...
1、8086cpu自动读取ds寄存器中的数据作为内存单元的段地址;
2、8086cpu不支持将数据直接送入段寄存器,但可以将寄存器中的内容送入段寄存器...
阅读全文 |
评论次数(0) |
浏览次数(397) |
所属类型(默认类型)
[2019-09-06 00:17] 实验一
debug命令:
-r:查看、改变cpu寄存器中的内容
-d:查看内存中的内容
-e:改写内存中的内容
-u:将内存中的机器指令转换成汇编指令
-t:执行一条机器指令
-a:以汇编指令的格式在内存中写入一条机器指令
-p:...
-r:查看、改变cpu寄存器中的内容
-d:查看内存中的内容
-e:改写内存中的内容
-u:将内存中的机器指令转换成汇编指令
-t:执行一条机器指令
-a:以汇编指令的格式在内存中写入一条机器指令
-p:...
阅读全文 |
评论次数(0) |
浏览次数(407) |
所属类型(默认类型)
[2019-09-05 00:03] 第二章
2.11
通用寄存器的值改变可用mov指令,但是代码段寄存器的指令不能,目前可用jmp xxxxH:xxxxH来修改cs和ip中的值;加入使用jmp 某一通用寄存器,则只是修改ip中的值。...
通用寄存器的值改变可用mov指令,但是代码段寄存器的指令不能,目前可用jmp xxxxH:xxxxH来修改cs和ip中的值;加入使用jmp 某一通用寄存器,则只是修改ip中的值。...
阅读全文 |
评论次数(0) |
浏览次数(379) |
所属类型(默认类型)
[2019-09-04 23:08] 第二章
2.10
cpu在加电启动或者复位后,cs和ip被设置为cs=ffffH,ip被设置为0000H;所以ffff0单元中的指令是8086PC机开机启动后执行的第一条指令。cs和ip就是表示指向代码的地址...
cpu在加电启动或者复位后,cs和ip被设置为cs=ffffH,ip被设置为0000H;所以ffff0单元中的指令是8086PC机开机启动后执行的第一条指令。cs和ip就是表示指向代码的地址...
阅读全文 |
评论次数(0) |
浏览次数(370) |
所属类型(默认类型)
[2019-09-03 22:58] 第一章
注意事项:
1.9 数据总线:
数据总线读取数据先读取低位数据,再读取高位数据;书中图来看在话,每一次读取在数据中,低位在上,高位在下。...
1.9 数据总线:
数据总线读取数据先读取低位数据,再读取高位数据;书中图来看在话,每一次读取在数据中,低位在上,高位在下。...
阅读全文 |
评论次数(1) |
浏览次数(525) |
所属类型(默认类型)
[2019-09-03 09:08] 先立个flag
汇编学习开始了,欢迎各位老大大佬来监督...
阅读全文 |
评论次数(2) |
浏览次数(518) |
所属类型(默认类型)