📄 80x2.htm
字号:
<html>
<head>
<meta http-equiv="Content-Type" content="text/html; charset=gb2312">
<meta name="GENERATOR" content="Microsoft FrontPage 4.0">
<meta name="ProgId" content="FrontPage.Editor.Document">
<title>第3章</title>
</head>
<body>
<font FACE="楷体_GB2312" LANG="ZH-CN" SIZE="5">
<p ALIGN="CENTER" style="text-indent: 40; margin-left: 20; margin-right: 20"><br>
第</font><font SIZE="5">3</font><font FACE="楷体_GB2312" LANG="ZH-CN" SIZE="5">章<br>
</p>
</font><font SIZE="3">
<p ALIGN="JUSTIFY" style="text-indent: 40; margin-left: 20; margin-right: 20">3.1
</font><font size="3"> </font><font FACE="??ì?,SimSun" LANG="ZH-CN" SIZE="3">(</font><font SIZE="3">1</font><font FACE="??ì?,SimSun" LANG="ZH-CN" SIZE="3">)</font><font SIZE="3">SS
</font><font FACE="??ì?,SimSun" LANG="ZH-CN" SIZE="3">(</font><font SIZE="3">2</font><font FACE="??ì?,SimSun" LANG="ZH-CN" SIZE="3">)</font><font SIZE="3">CS
</font><font FACE="??ì?,SimSun" LANG="ZH-CN" SIZE="3">(</font><font SIZE="3">3</font><font FACE="??ì?,SimSun" LANG="ZH-CN" SIZE="3">)</font><font SIZE="3">DS
</font><font FACE="??ì?,SimSun" LANG="ZH-CN" SIZE="3">(</font><font SIZE="3">4</font><font FACE="??ì?,SimSun" LANG="ZH-CN" SIZE="3">)</font><font SIZE="3">FS
</font><font FACE="??ì?,SimSun" LANG="ZH-CN" SIZE="3">(</font><font SIZE="3">5</font><font FACE="??ì?,SimSun" LANG="ZH-CN" SIZE="3">)</font><font SIZE="3">SS
</font><font FACE="??ì?,SimSun" LANG="ZH-CN" SIZE="3">(</font><font SIZE="3">6</font><font FACE="??ì?,SimSun" LANG="ZH-CN" SIZE="3">)</font><font SIZE="3">DS
</font><font FACE="??ì?,SimSun" LANG="ZH-CN" SIZE="3">(</font><font SIZE="3">7</font><font FACE="??ì?,SimSun" LANG="ZH-CN" SIZE="3">)</font><font SIZE="3">DS
</font><font FACE="??ì?,SimSun" LANG="ZH-CN" SIZE="3">(</font><font SIZE="3">8</font><font FACE="??ì?,SimSun" LANG="ZH-CN" SIZE="3">)</font><font SIZE="3">ES</p>
<p ALIGN="JUSTIFY" style="text-indent: 40; margin-left: 20; margin-right: 20">3.2
</font><font FACE="??ì?,SimSun" LANG="ZH-CN" size="3"> (</font><font SIZE="3">1</font><font FACE="??ì?,SimSun" LANG="ZH-CN" SIZE="3">)正确</font><font SIZE="3">
</font><font FACE="??ì?,SimSun" LANG="ZH-CN" SIZE="3">(</font><font SIZE="3">2</font><font FACE="??ì?,SimSun" LANG="ZH-CN" SIZE="3">)类型不匹配</p>
</font><font SIZE="3">
<p ALIGN="JUSTIFY" style="text-indent: 40; margin-left: 20; margin-right: 20"></font><font FACE="??ì?,SimSun" LANG="ZH-CN" SIZE="3">
(</font><font SIZE="3">3</font><font FACE="??ì?,SimSun" LANG="ZH-CN" SIZE="3">)两个操作数不能同时是内存操作数</font><font SIZE="3">
</font><font FACE="??ì?,SimSun" LANG="ZH-CN" SIZE="3">(</font><font SIZE="3">4</font><font FACE="??ì?,SimSun" LANG="ZH-CN" SIZE="3">)没有</font><font SIZE="3">[esp][eax*3]</font><font FACE="??ì?,SimSun" LANG="ZH-CN" SIZE="3">这种操作数形式</p>
</font><font SIZE="3">
<p ALIGN="JUSTIFY" style="text-indent: 40; margin-left: 20; margin-right: 20"></font><font FACE="??ì?,SimSun" LANG="ZH-CN" SIZE="3">
(</font><font SIZE="3">5</font><font FACE="??ì?,SimSun" LANG="ZH-CN" SIZE="3">)正确</font><font SIZE="3">
</font><font FACE="??ì?,SimSun" LANG="ZH-CN" SIZE="3">(</font><font SIZE="3">6</font><font FACE="??ì?,SimSun" LANG="ZH-CN" SIZE="3">)</font><font SIZE="3">CS</font><font FACE="??ì?,SimSun" LANG="ZH-CN" SIZE="3">不能作为目的操作数</p>
</font><font SIZE="3">
<p ALIGN="JUSTIFY" style="text-indent: 40; margin-left: 20; margin-right: 20"></font><font FACE="??ì?,SimSun" LANG="ZH-CN" SIZE="3">
(</font><font SIZE="3">7</font><font FACE="??ì?,SimSun" LANG="ZH-CN" SIZE="3">)类型不确定</font><font SIZE="3">
</font><font FACE="??ì?,SimSun" LANG="ZH-CN" SIZE="3">(</font><font SIZE="3">8</font><font FACE="??ì?,SimSun" LANG="ZH-CN" SIZE="3">)没有</font><font SIZE="3">[sp]</font><font FACE="??ì?,SimSun" LANG="ZH-CN" SIZE="3">这种操作数形式</p>
</font><font SIZE="3">
<p ALIGN="JUSTIFY" style="text-indent: 40; margin-left: 20; margin-right: 20"></font><font FACE="??ì?,SimSun" LANG="ZH-CN" SIZE="3">
(</font><font SIZE="3">9</font><font FACE="??ì?,SimSun" LANG="ZH-CN" SIZE="3">)条件转移指令的操作数只能是标号</font><font SIZE="3">
</font><font FACE="??ì?,SimSun" LANG="ZH-CN" SIZE="3">(</font><font SIZE="3">10</font><font FACE="??ì?,SimSun" LANG="ZH-CN" SIZE="3">)正确</p>
</font><font SIZE="3">
<p ALIGN="JUSTIFY" style="text-indent: 40; margin-left: 20; margin-right: 20"></font><font FACE="??ì?,SimSun" LANG="ZH-CN" SIZE="3">
(</font><font SIZE="3">11</font><font FACE="??ì?,SimSun" LANG="ZH-CN" SIZE="3">)不能将立即数送段寄存器</font><font SIZE="3">
</font><font FACE="??ì?,SimSun" LANG="ZH-CN" SIZE="3">(</font><font SIZE="3">12</font><font FACE="??ì?,SimSun" LANG="ZH-CN" SIZE="3">)没有</font><font SIZE="3">bx+2</font><font FACE="??ì?,SimSun" LANG="ZH-CN" SIZE="3">这种操作数形式</p>
</font><font SIZE="3">
<p ALIGN="JUSTIFY" style="text-indent: 40; margin-left: 20; margin-right: 20">3.3
</font><font FACE="??ì?,SimSun" LANG="ZH-CN" size="3"> (</font><font SIZE="3">1</font><font FACE="??ì?,SimSun" LANG="ZH-CN" SIZE="3">)</font><font SIZE="3">27feh
</font><font FACE="??ì?,SimSun" LANG="ZH-CN" SIZE="3">(</font><font SIZE="3">2</font><font FACE="??ì?,SimSun" LANG="ZH-CN" SIZE="3">)</font><font SIZE="3">2a00h
</font><font FACE="??ì?,SimSun" LANG="ZH-CN" SIZE="3">(</font><font SIZE="3">3</font><font FACE="??ì?,SimSun" LANG="ZH-CN" SIZE="3">)</font><font SIZE="3">2802h
</font><font FACE="??ì?,SimSun" LANG="ZH-CN" SIZE="3">(</font><font SIZE="3">4</font><font FACE="??ì?,SimSun" LANG="ZH-CN" SIZE="3">)</font><font SIZE="3">2801h</p>
<p ALIGN="JUSTIFY" style="text-indent: 40; margin-left: 20; margin-right: 20"></font><font FACE="??ì?,SimSun" LANG="ZH-CN" SIZE="3">
(</font><font SIZE="3">5</font><font FACE="??ì?,SimSun" LANG="ZH-CN" SIZE="3">)</font><font SIZE="3">27feh</font><font FACE="??ì?,SimSun" LANG="ZH-CN" SIZE="3">(段内调用)或</font><font SIZE="3">27fch</font><font FACE="??ì?,SimSun" LANG="ZH-CN" SIZE="3">(段间调用)</font></p>
<blockquote>
<p ALIGN="JUSTIFY" style="text-indent: 40; margin-left: 20; margin-right: 20"><font face="??ì?,SimSun" lang="ZH-CN" size="3">(6)2802h(段内返回)或2804h(段间返回)
(7)27fch (8)2804h</font></p>
</blockquote>
<font SIZE="3">
<p ALIGN="JUSTIFY" style="text-indent: 40; margin-left: 20; margin-right: 20">3.4
DEC</font><font FACE="??ì?,SimSun" LANG="ZH-CN" SIZE="3">指令不影响</font><font SIZE="3">CF</font><font FACE="??ì?,SimSun" LANG="ZH-CN" SIZE="3">,</font><font SIZE="3">SUB</font><font FACE="??ì?,SimSun" LANG="ZH-CN" SIZE="3">指令影响</font><font SIZE="3">CF</font><font FACE="??ì?,SimSun" LANG="ZH-CN" SIZE="3">。</p>
</font><font SIZE="3">
<p ALIGN="JUSTIFY" style="text-indent: 40; margin-left: 20; margin-right: 20">3.5
</font><font FACE="??ì?,SimSun" LANG="ZH-CN" SIZE="3">不能。转移类指令(如</font><font SIZE="3">JMP</font><font FACE="??ì?,SimSun" LANG="ZH-CN" SIZE="3">、</font><font SIZE="3">Jcc</font><font FACE="??ì?,SimSun" LANG="ZH-CN" SIZE="3">、</font><font SIZE="3">LOOP</font><font FACE="??ì?,SimSun" LANG="ZH-CN" SIZE="3">、</font><font SIZE="3">CALL</font><font FACE="??ì?,SimSun" LANG="ZH-CN" SIZE="3">、</font><font SIZE="3">RET</font><font FACE="??ì?,SimSun" LANG="ZH-CN" SIZE="3">等)的执行会改变</font><font SIZE="3">IP</font><font FACE="??ì?,SimSun" LANG="ZH-CN" SIZE="3">的值。</p>
</font><font SIZE="3">
<p ALIGN="JUSTIFY" style="text-indent: 40; margin-left: 20; margin-right: 20">3.6
</font><font FACE="??ì?,SimSun" LANG="ZH-CN" size="3">
无符号数比较:</p>
<blockquote>
<p ALIGN="JUSTIFY" style="text-indent: 40; margin-left: 20; margin-right: 20">(</font><font SIZE="3">1</font><font FACE="??ì?,SimSun" LANG="ZH-CN" SIZE="3">)</font><font SIZE="3">ZF
= 1 </font><font FACE="??ì?,SimSun" LANG="ZH-CN" SIZE="3">(</font><font SIZE="3">2</font><font FACE="??ì?,SimSun" LANG="ZH-CN" SIZE="3">)</font><font SIZE="3">ZF
= 0 </font><font FACE="??ì?,SimSun" LANG="ZH-CN" SIZE="3">(</font><font SIZE="3">3</font><font FACE="??ì?,SimSun" LANG="ZH-CN" SIZE="3">)</font><font SIZE="3">CF
= 1 </font><font FACE="??ì?,SimSun" LANG="ZH-CN" SIZE="3">(</font><font SIZE="3">4</font><font FACE="??ì?,SimSun" LANG="ZH-CN" SIZE="3">)</font><font SIZE="3">CF
= 1 </font><font FACE="??ì?,SimSun" LANG="ZH-CN" SIZE="3">或</font><font SIZE="3">
ZF = 1</p>
</font><font FACE="??ì?,SimSun" LANG="ZH-CN" SIZE="3">
<p ALIGN="JUSTIFY" style="text-indent: 40; margin-left: 20; margin-right: 20">(</font><font SIZE="3">5</font><font FACE="??ì?,SimSun" LANG="ZH-CN" SIZE="3">)</font><font SIZE="3">CF
= 0 </font><font FACE="??ì?,SimSun" LANG="ZH-CN" SIZE="3">且</font><font SIZE="3">
ZF = 0 </font><font FACE="??ì?,SimSun" LANG="ZH-CN" size="3"> (</font><font SIZE="3">6</font><font FACE="??ì?,SimSun" LANG="ZH-CN" SIZE="3">)</font><font SIZE="3">CF
= 0</p>
</font><font FACE="??ì?,SimSun" LANG="ZH-CN" SIZE="3">
<p ALIGN="JUSTIFY" style="text-indent: 40; margin-left: 20; margin-right: 20">带符号数比较:</p>
<p ALIGN="JUSTIFY" style="text-indent: 40; margin-left: 20; margin-right: 20">(</font><font SIZE="3">1</font><font FACE="??ì?,SimSun" LANG="ZH-CN" SIZE="3">)</font><font SIZE="3">ZF
= 1 </font><font FACE="??ì?,SimSun" LANG="ZH-CN" SIZE="3">(</font><font SIZE="3">2</font><font FACE="??ì?,SimSun" LANG="ZH-CN" SIZE="3">)</font><font SIZE="3">ZF
= 0 </font><font FACE="??ì?,SimSun" LANG="ZH-CN" SIZE="3">(</font><font SIZE="3">3</font><font FACE="??ì?,SimSun" LANG="ZH-CN" SIZE="3">)</font><font SIZE="3">SF
<> OF </font><font FACE="??ì?,SimSun" LANG="ZH-CN" SIZE="3">(</font><font SIZE="3">4</font><font FACE="??ì?,SimSun" LANG="ZH-CN" SIZE="3">)</font><font SIZE="3">SF
<> OF </font><font FACE="??ì?,SimSun" LANG="ZH-CN" SIZE="3">或</font><font SIZE="3">
ZF = 1</p>
</font><font FACE="??ì?,SimSun" LANG="ZH-CN" SIZE="3">
<p ALIGN="JUSTIFY" style="text-indent: 40; margin-left: 20; margin-right: 20">(</font><font SIZE="3">5</font><font FACE="??ì?,SimSun" LANG="ZH-CN" SIZE="3">)</font><font SIZE="3">SF
= OF </font><font FACE="??ì?,SimSun" LANG="ZH-CN" SIZE="3">且</font><font SIZE="3">
ZF = 0 </font><font FACE="??ì?,SimSun" LANG="ZH-CN" SIZE="3">(</font><font SIZE="3">6</font><font FACE="??ì?,SimSun" LANG="ZH-CN" SIZE="3">)</font><font SIZE="3">SF=
OF</p>
</blockquote>
<p ALIGN="JUSTIFY" style="text-indent: 40; margin-left: 20; margin-right: 20">3.7
CALL</font><font FACE="??ì?,SimSun" LANG="ZH-CN" SIZE="3">指令执行的操作:</p>
<blockquote>
<p ALIGN="JUSTIFY" style="text-indent: 40; margin-left: 20; margin-right: 20">(</font><font SIZE="3">1</font><font FACE="??ì?,SimSun" LANG="ZH-CN" SIZE="3">)返回地址进栈。</p>
<blockquote>
<p ALIGN="JUSTIFY" style="text-indent: 40; margin-left: 20; margin-right: 20">段间调用:</font><font SIZE="3">CS</font><font FACE="??ì?,SimSun" LANG="ZH-CN" SIZE="3">与</font><font SIZE="3">IP</font><font FACE="??ì?,SimSun" LANG="ZH-CN" SIZE="3">(下一条指令的地址)依次进栈。</font><font SIZE="3"></p>
</font><font FACE="??ì?,SimSun" LANG="ZH-CN" SIZE="3">
<p ALIGN="JUSTIFY" style="text-indent: 40; margin-left: 20; margin-right: 20">段内调用:</font><font SIZE="3">IP</font><font FACE="??ì?,SimSun" LANG="ZH-CN" SIZE="3">(下一条指令的</font><font SIZE="3">16</font><font FACE="??ì?,SimSun" LANG="ZH-CN" SIZE="3">位偏移地址)进栈。</font><font SIZE="3"></p>
</blockquote>
</font><font FACE="??ì?,SimSun" LANG="ZH-CN" SIZE="3">
<p ALIGN="JUSTIFY" style="text-indent: 40; margin-left: 20; margin-right: 20">(</font><font SIZE="3">2</font><font FACE="??ì?,SimSun" LANG="ZH-CN" SIZE="3">)转移到过程的第一条指令去执行。</p>
<blockquote>
<p ALIGN="JUSTIFY" style="text-indent: 40; margin-left: 20; margin-right: 20">段间调用:根据操作数,将</font><font SIZE="3">32</font><font FACE="??ì?,SimSun" LANG="ZH-CN" SIZE="3">位分段地址送</font><font SIZE="3">CS:IP</font><font FACE="??ì?,SimSun" LANG="ZH-CN" SIZE="3">。</font><font SIZE="3"></p>
</font><font FACE="??ì?,SimSun" LANG="ZH-CN" SIZE="3">
<p ALIGN="JUSTIFY" style="text-indent: 40; margin-left: 20; margin-right: 20">段内调用:根据操作数,将</font><font SIZE="3">16</font><font FACE="??ì?,SimSun" LANG="ZH-CN" SIZE="3">位偏移地址送</font><font SIZE="3">IP</font><font FACE="??ì?,SimSun" LANG="ZH-CN" SIZE="3">。</font><font SIZE="3"></p>
</blockquote>
<p ALIGN="JUSTIFY" style="text-indent: 40; margin-left: 20; margin-right: 20">RET</font><font FACE="??ì?,SimSun" LANG="ZH-CN" SIZE="3">指令执行的操作:将返回地址出栈,从而实现转移到返回地址处。</p>
<blockquote>
<p ALIGN="JUSTIFY" style="text-indent: 40; margin-left: 20; margin-right: 20">段间返回:出栈一个双字到</font><font SIZE="3">CS:IP</font><font FACE="??ì?,SimSun" LANG="ZH-CN" SIZE="3">。</font><font SIZE="3"></p>
</font><font FACE="??ì?,SimSun" LANG="ZH-CN" SIZE="3">
<p ALIGN="JUSTIFY" style="text-indent: 40; margin-left: 20; margin-right: 20">段内返回:出栈一个字到</font><font SIZE="3">IP</font><font FACE="??ì?,SimSun" LANG="ZH-CN" SIZE="3">。</font><font SIZE="3"></p>
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -