能力值:
( LV2,RANK:10 )
|
-
-
2 楼
怎么没有人回答啊?
|
能力值:
( LV2,RANK:10 )
|
-
-
3 楼
不会是网上下载的书吧.
书里还是有介绍的.最好是用到那学到那.纯粹比较不好记忆的
|
能力值:
( LV2,RANK:10 )
|
-
-
4 楼
问题是我现在就想使用这些指令啊。书是学校发的书。
|
能力值:
( LV9,RANK:810 )
|
-
-
5 楼
|
能力值:
( LV9,RANK:810 )
|
-
-
6 楼
|
能力值:
( LV2,RANK:10 )
|
-
-
7 楼
TO:ForEver
你怎么传这个教程给我啊。我只想知道我提出的那几个问题啊。
而且我也下载了你的这个教程。和我们发的书还不差不多啊。
|
能力值:
( LV9,RANK:810 )
|
-
-
8 楼
教程里每条指令下面都有解释和例子。如果你认真读了,你应该明白这些指令都是干什么的。
简单解释一下:
1.关于非压缩的调整指令(AAA、AAS、AAM、AAD)的用法及用途;
这些指令用于调整BCD码运算的结果。直接的两个BCD码运算后能结果是二进制形式,要调整到BCD形式就需要这些指令。
2.关于逻辑右移(SHR)、算术右移(SAR)、循环右移(ROR)及带进位循环右移(RCR)4条指令的区别。
看指令说明。
3.关于(HLT、WAIT、ESC、LOCK)4条处理机控制指令的用法及用途
ESC不清楚,其他看指令说明。
如果你看不懂这些,建议你先看一下计算机原理之类的书。
|
能力值:
( LV2,RANK:10 )
|
-
-
9 楼
既然你会,为什么就不愿意直接说一下呢?
|
能力值:
( LV9,RANK:810 )
|
-
-
10 楼
其实你自己看一下书就知道了。为什么还要问呢?
|
能力值:
( LV2,RANK:10 )
|
-
-
11 楼
我都已经说了看书看不懂,所以才问的。你自己看看你跟贴跟了多少个了。如果你在跟第一次贴时就帮我讲解一下,恐怕字数也没有你现在这么多吧?
|
能力值:
( LV9,RANK:290 )
|
-
-
12 楼
最初由 莫取网名 发布 我都已经说了看书看不懂,所以才问的。你自己看看你跟贴跟了多少个了。如果你在跟第一次贴时就帮我讲解一下,恐怕字数也没有你现在这么多吧?
|
能力值:
( LV9,RANK:410 )
|
-
-
13 楼
最初由 莫取网名 发布 各位大虾,在下在学DOS汇编时,遇到了几个问题,具体如下: 1.关于非压缩的调整指令(AAA、AAS、AAM、AAD)的用法及用途; 2.关于逻辑右移(SHR)、算术右移(SAR)、循环右移(ROR)及带进位循环右移(RCR)4条指令的区别。 3.关于(HLT、WAIT、ESC、LOCK)4条处理机控制指令的用法及用途。
........
算术运算指令都是针对二进制数进行操作的指令,但对绝大多数人来说,十进制是最简单、熟悉的。为了方便按十进制数进行算术运算,指令系统专门提供了一组十进制运算调整指令。
虽然人们会觉得按十进制进行算术运算很自然,但计算机要化更多的时间来完成相应操作。在通常情况下,这组指令很少被程序员运用在实际的程序之中。所以,这组指令的使用率较低,可以根据需要有选择性地学习。
1、ASCII码加调整指令AAA(Ascii Adjust After Addition)
该指令是用于调整AL之值,该值是二个ASCII码字节相加之和。具体的调整规则如下:
、若AL的低四位大于9,或标志位AF=1,则,AH=AH+1,AL=AL+6,并置AF和CF为1,否则,只置AF和CF为0;
、清除AL的高四位。 SHL-SHR:为一组模式.看图类比吧
此组指令有:逻辑左移SHL(Shift Logical Left)和逻辑右移SHR(Shift Logical Right)。它们的指令格式如下:
SHL/SHR Reg/Mem, CL/Imm
受影响的标志位:CF、OF、PF、SF和ZF(AF无定义)。
逻辑左移/右移指令只有它们的移位方向不同,移位后空出的位都补0 ROL-ROR:为一组模式.看图类比
循环移位指令有:循环左移ROL(Rotate Left)和循环右移ROR(Rotate Right)。
指令的格式:ROL/ROR Reg/Mem, CL/Imm
受影响的标志位:CF和OF
循环左移/右移指令只是移位方向不同,它们移出的位不仅要进入CF,而且还要填补空出的位 暂停HLT(Enter Halt State Instruction)
在等待中断信号时,该指令使CPU处于暂停工作状态,CS:IP指向下一条待执行的指令。当产生了中断信号,CPU把CS和IP压栈,并转入中断处理程序。在中断处理程序执行完后,中断返回指令IRET弹出IP和CS,并唤醒CPU执行下条指令。
指令的格式:HLT
(DOS下这个是中断指令,32位win2000这些指令为特权指令,ring0下才能执行)
比如DOS下用这个指令,然后等待串口送数据.老的玩DOS汇编对这些都很熟悉,现在是开发驱动的才玩这些指令了.win2000下不给ring3的程序随便使用这些指令.
类比这些都是一些CPU的中断指令.不知道中断的话,你最好看看8086的硬件概念再来学汇编了.中断在DOS下是基本概念,而现在中断被操作系统屏蔽了. 如果这样都看不懂,估计没有人会教你了.
|
能力值:
( LV2,RANK:10 )
|
-
-
14 楼
|
能力值:
( LV2,RANK:10 )
|
-
-
15 楼
最初由 hnhuqiong 发布 算术运算指令都是针对二进制数进行操作的指令,但对绝大多数人来说,十进制是最简单、熟悉的。为了方便按十进制数进行算术运算,指令系统专门提供了一组十进制运算调整指令。
虽然人们会觉得按十进制进行算术运算很自然,但计算机要化更多的时间来完成相应操作。在通常情况下,这组指令很少被程序员运用在实际的程序之中。所以,这组指令的使用率较低,可以根据需要有选择性地学习。
1、ASCII码加调整指令AAA(Ascii Adjust After Addition) ........ 谢谢这位兄台。
|
能力值:
( LV4,RANK:50 )
|
-
-
16 楼
学习了!
你输入的信息太短,至少要6个汉字。
|
能力值:
(RANK:990 )
|
-
-
17 楼
最初由 莫取网名 发布 我都已经说了看书看不懂,所以才问的。你自己看看你跟贴跟了多少个了。如果你在跟第一次贴时就帮我讲解一下,恐怕字数也没有你现在这么多吧?
你这样的态度不太好吧?ForEver 给你发了教程,并也给你做了解答,可能对你来说他的解答不能令你满意,但你这样说话是不是太让人寒心了?对于给予了自己帮助的人,不管效果如何,我们首先应该感谢人家,而不是抱怨别人解答的不好。谁也没有义务必须回答你的问题,对于那些热心给予回复的朋友,我们首先是感谢别人,而不是像你这样对别人表示不满。如果你以后还是这个态度的话,估计能给你回复的人将会越来越少。
|
能力值:
( LV9,RANK:290 )
|
-
-
18 楼
最初由 莫取网名 发布 这位兄台还请勿见笑啊。在下确实是一个菜鸟。
我并不是笑你 是菜鸟,因为我也是菜鸟。
只是你那态度问题,让人一时难以接受
|
能力值:
( LV2,RANK:10 )
|
-
-
19 楼
最初由 CCDebuger 发布 你这样的态度不太好吧?ForEver 给你发了教程,并也给你做了解答,可能对你来说他的解答不能令你满意,但你这样说话是不是太让人寒心了?对于给予了自己帮助的人,不管效果如何,我们首先应该感谢人家,而不是抱怨别人解答的不好。谁也没有义务必须回答你的问题,对于那些热心给予回复的朋友,我们首先是感谢别人,而不是像你这样对别人表示不满。如果你以后还是这个态度的话,估计能给你回复的人将会越来越少。 在下错了。为我前面的言行而表示深深的歉意。
FOREVER兄,非常抱歉。
|
能力值:
( LV9,RANK:810 )
|
-
-
20 楼
没关系的。给你传个书是希望你查着方便。另外我解释也不过是从书里照搬而已。索性就把书传给你了。我是懒人,莫见怪。
|
|
|