系统粉 > 电脑问答 > 其他问答

已解决一个汇编的问题

提问者:jx二十六  |  浏览次  |  提问时间:2017-03-13  |  回答数量:5

一个汇编的问题 不能用立即数传送给 SS 段寄存器,需用通用寄存器转一下mov ax,6180hmov ss,ax

已有5条答案
丶文艺青年__

丶文艺青年__

回答数:53  |  被采纳数:43

不懂汇编...
对内存了解的也不是很多...
楼上的应该是对的吧.. [s:470]
2017-03-13 17:13:27
赞 5
_谋情_害命_

_谋情_害命_

回答数:109  |  被采纳数:141

作业已经交上,让老师的红笔来证明对错吧,谢谢楼主的帮忙
2017-03-13 19:05:22
赞 10
名不正9言不顺

名不正9言不顺

回答数:194  |  被采纳数:2

1) mov ecx, 100<---------100传入ecx
(2) mov eax, 200<---------200传入eax
(3) push eax <------------eax先进了
(4) push ecx<-------------再来是ecx
(5) pop ebx<--------------从栈顶取出一个,也是最后进去的那一个,结果存到ebx
(6) pop ecx<--------------从栈顶取出一个,也就是刚刚先进去的那个了,结果存到ecx

你那直接传送是不行的

下面是我举的例子

本人不才 初中毕业

要是你看不懂也没办法 [s:460]
2017-03-13 21:04:33
赞 19
黑色死亡色彩

黑色死亡色彩

回答数:13  |  被采纳数:24

1,EAX在乘法和除法指令中被自动使用。通常称之为扩展累加寄存器。
2,CPU自动使用ECX作为循环计数器。
3,ESP寻址堆栈(一种系统内存结构)上的数据,ESP寄存器一般绝不应该用于算术运算和数据传送,通常称之为扩展堆栈指针寄存器。
4,ESI和EDI通常用于内存数据的高速传送,通常称之为扩展源指针和目的指针寄存器。
5,EBP由高级语言来引用函数参数和局部变量。除非用于高级语言设计技巧中,EBP一般不用于算术运算和数据传送中,通常称之为扩展帧指针寄存器。



16位段寄存器:
CS, SS, DS, ES, FS, GS.

段寄存器被用于存放段的基址,段是一块预分配的内存区域。有些段存放着程序的指令(代码),有些则存放着变量(数据),另外还有其他的段如堆栈段存放着函数变量和函数参数。


指令指针:
EIP(或称为指令指针)寄存器包含着下一条要执行的指令的地址。

EFLAGS寄存器
EFLAGS(或Flags)寄存器由控制CPU的操作或反映CPU某些运算的结果的独立二进制位组成。
某些标志被设置表示使其值等于1,被清除表示着其等于0。


状态标志:状态标志反映了CPU执行的算术和逻辑操作的结果,包括溢出,符号,零,辅助进位,奇偶和进位标志:

1,进位标志(CF):在无符号运算的结果无法容纳于目的操作数时被设置。
2,溢出标志(OF):在有符号运算的结果太宽(位数太多)而无法容纳于目的操作数中时被设置。
3,符号标志(SF):在算术或逻辑运算产生的结果位负时被设置。
4,零标志(ZF):在算术或逻辑运算中产生的结果位零时被设置。
5,奇偶标志(PF):在统计一个数值内值等于1的位数时,如果为1的总位数为偶数,则设置该标志,否则清除该标志。
6,辅助进位标志(AF):在算术运算导致8位操作数的位3到位4产生进位时被设置。
2017-03-13 23:47:04
赞 1
幸福静止06

幸福静止06

回答数:38  |  被采纳数:18

正在学微机原理,里面有一个汇编的问题找不到答案。请知道的来指导一下

判断指令中不合法的原因所在

MOVSS, 6180H

好象是代码段寄存器不能用MOV 指令啊
是不是SS也不能用呢,到底是什么原因呢。
大侠来指点下了。
2017-03-14 01:56:28
赞 3
相关问答
最新其他问答
解决方法