锘??xml version="1.0" encoding="utf-8" standalone="yes"?>欧美日韩免费在线观看,亚洲精品国产欧美,欧美国产一区二区http://m.shnenglu.com/jackyxinli/鏄ラ鎷傞潰涓ら綰紝縐嬪彾媧掑湴涓鐗囬噾銆? 澶忚嵎鎽囨洺涓韜交錛屽啲闆鐩栧ぇ鍦伴摱銆?/description>zh-cnSun, 16 Nov 2025 06:50:34 GMTSun, 16 Nov 2025 06:50:34 GMT60VC++/G++ 澶氭佹祴璇?/title><link>http://m.shnenglu.com/jackyxinli/archive/2019/11/28/217003.html</link><dc:creator>jacky_zz</dc:creator><author>jacky_zz</author><pubDate>Thu, 28 Nov 2019 03:05:00 GMT</pubDate><guid>http://m.shnenglu.com/jackyxinli/archive/2019/11/28/217003.html</guid><wfw:comment>http://m.shnenglu.com/jackyxinli/comments/217003.html</wfw:comment><comments>http://m.shnenglu.com/jackyxinli/archive/2019/11/28/217003.html#Feedback</comments><slash:comments>0</slash:comments><wfw:commentRss>http://m.shnenglu.com/jackyxinli/comments/commentRss/217003.html</wfw:commentRss><trackback:ping>http://m.shnenglu.com/jackyxinli/services/trackbacks/217003.html</trackback:ping><description><![CDATA[<div>base.h</div> <div> <div style="background-color:#eeeeee;font-size:13px;border:1px solid #CCCCCC;padding-right: 5px;padding-bottom: 4px;padding-left: 4px;padding-top: 4px;width: 98%;word-break:break-all"><!--<br /> <br /> Code highlighting produced by Actipro CodeHighlighter (freeware)<br /> http://www.CodeHighlighter.com/<br /> <br /> --><span style="color: #008080; "> 1</span> <span style="color: #000000; ">#ifndef BASE_H<br /> </span><span style="color: #008080; "> 2</span> <span style="color: #000000; "></span><span style="color: #0000FF; ">#define</span><span style="color: #000000; "> BASE_H</span><span style="color: #000000; "><br /> </span><span style="color: #008080; "> 3</span> <span style="color: #000000; "><br /> </span><span style="color: #008080; "> 4</span> <span style="color: #000000; ">#include </span><span style="color: #000000; "><</span><span style="color: #000000; ">stdio.h</span><span style="color: #000000; ">></span><span style="color: #000000; "><br /> </span><span style="color: #008080; "> 5</span> <span style="color: #000000; "><br /> </span><span style="color: #008080; "> 6</span> <span style="color: #000000; "></span><span style="color: #0000FF; ">class</span><span style="color: #000000; "> Base<br /> </span><span style="color: #008080; "> 7</span> <span style="color: #000000; ">{<br /> </span><span style="color: #008080; "> 8</span> <span style="color: #000000; "></span><span style="color: #0000FF; ">public</span><span style="color: #000000; ">:<br /> </span><span style="color: #008080; "> 9</span> <span style="color: #000000; ">    Base(</span><span style="color: #0000FF; ">int</span><span style="color: #000000; "> val) : m_val(val)<br /> </span><span style="color: #008080; ">10</span> <span style="color: #000000; ">    {<br /> </span><span style="color: #008080; ">11</span> <span style="color: #000000; ">        printf(</span><span style="color: #000000; ">"</span><span style="color: #000000; ">Base::Base(int val) @ 0x%08X\n</span><span style="color: #000000; ">"</span><span style="color: #000000; ">, </span><span style="color: #0000FF; ">this</span><span style="color: #000000; ">);<br /> </span><span style="color: #008080; ">12</span> <span style="color: #000000; ">    }<br /> </span><span style="color: #008080; ">13</span> <span style="color: #000000; "><br /> </span><span style="color: #008080; ">14</span> <span style="color: #000000; ">    </span><span style="color: #0000FF; ">virtual</span><span style="color: #000000; "> </span><span style="color: #0000FF; ">void</span><span style="color: #000000; "> say()<br /> </span><span style="color: #008080; ">15</span> <span style="color: #000000; ">    {<br /> </span><span style="color: #008080; ">16</span> <span style="color: #000000; ">        printf(</span><span style="color: #000000; ">"</span><span style="color: #000000; ">void Base::say() @ 0x%08X\n</span><span style="color: #000000; ">"</span><span style="color: #000000; ">, </span><span style="color: #0000FF; ">this</span><span style="color: #000000; ">);<br /> </span><span style="color: #008080; ">17</span> <span style="color: #000000; ">        printf(</span><span style="color: #000000; ">"</span><span style="color: #000000; ">val = %d\n</span><span style="color: #000000; ">"</span><span style="color: #000000; ">, GetVal());<br /> </span><span style="color: #008080; ">18</span> <span style="color: #000000; ">    }<br /> </span><span style="color: #008080; ">19</span> <span style="color: #000000; "><br /> </span><span style="color: #008080; ">20</span> <span style="color: #000000; ">    </span><span style="color: #0000FF; ">virtual</span><span style="color: #000000; "> </span><span style="color: #000000; ">~</span><span style="color: #000000; ">Base()<br /> </span><span style="color: #008080; ">21</span> <span style="color: #000000; ">    {<br /> </span><span style="color: #008080; ">22</span> <span style="color: #000000; ">        printf(</span><span style="color: #000000; ">"</span><span style="color: #000000; ">Base::~Base() @ 0x%08X\n</span><span style="color: #000000; ">"</span><span style="color: #000000; ">, </span><span style="color: #0000FF; ">this</span><span style="color: #000000; ">);<br /> </span><span style="color: #008080; ">23</span> <span style="color: #000000; ">    }<br /> </span><span style="color: #008080; ">24</span> <span style="color: #000000; "><br /> </span><span style="color: #008080; ">25</span> <span style="color: #000000; "></span><span style="color: #0000FF; ">protected</span><span style="color: #000000; ">:<br /> </span><span style="color: #008080; ">26</span> <span style="color: #000000; ">    </span><span style="color: #0000FF; ">int</span><span style="color: #000000; "> GetVal() { </span><span style="color: #0000FF; ">return</span><span style="color: #000000; "> m_val; }<br /> </span><span style="color: #008080; ">27</span> <span style="color: #000000; "><br /> </span><span style="color: #008080; ">28</span> <span style="color: #000000; "></span><span style="color: #0000FF; ">private</span><span style="color: #000000; ">:<br /> </span><span style="color: #008080; ">29</span> <span style="color: #000000; ">    </span><span style="color: #0000FF; ">int</span><span style="color: #000000; "> m_val;<br /> </span><span style="color: #008080; ">30</span> <span style="color: #000000; ">};<br /> </span><span style="color: #008080; ">31</span> <span style="color: #000000; "><br /> </span><span style="color: #008080; ">32</span> <span style="color: #000000; "></span><span style="color: #0000FF; ">#endif</span></div> </div> <div></div> <div>child.h</div> <div> <div style="background-color:#eeeeee;font-size:13px;border:1px solid #CCCCCC;padding-right: 5px;padding-bottom: 4px;padding-left: 4px;padding-top: 4px;width: 98%;word-break:break-all"><!--<br /> <br /> Code highlighting produced by Actipro CodeHighlighter (freeware)<br /> http://www.CodeHighlighter.com/<br /> <br /> --><span style="color: #008080; "> 1</span> <span style="color: #000000; ">#ifndef CHILD_H<br /> </span><span style="color: #008080; "> 2</span> <span style="color: #000000; "></span><span style="color: #0000FF; ">#define</span><span style="color: #000000; "> CHILD_H</span><span style="color: #000000; "><br /> </span><span style="color: #008080; "> 3</span> <span style="color: #000000; "><br /> </span><span style="color: #008080; "> 4</span> <span style="color: #000000; ">#include </span><span style="color: #000000; "><</span><span style="color: #000000; ">stdio.h</span><span style="color: #000000; ">></span><span style="color: #000000; "><br /> </span><span style="color: #008080; "> 5</span> <span style="color: #000000; ">#include </span><span style="color: #000000; ">"</span><span style="color: #000000; ">base.h</span><span style="color: #000000; ">"</span><span style="color: #000000; "><br /> </span><span style="color: #008080; "> 6</span> <span style="color: #000000; "><br /> </span><span style="color: #008080; "> 7</span> <span style="color: #000000; "></span><span style="color: #0000FF; ">class</span><span style="color: #000000; "> Child : </span><span style="color: #0000FF; ">public</span><span style="color: #000000; "> Base<br /> </span><span style="color: #008080; "> 8</span> <span style="color: #000000; ">{<br /> </span><span style="color: #008080; "> 9</span> <span style="color: #000000; "></span><span style="color: #0000FF; ">public</span><span style="color: #000000; ">:<br /> </span><span style="color: #008080; ">10</span> <span style="color: #000000; ">    Child(</span><span style="color: #0000FF; ">int</span><span style="color: #000000; "> val) : Base(val)<br /> </span><span style="color: #008080; ">11</span> <span style="color: #000000; ">    {<br /> </span><span style="color: #008080; ">12</span> <span style="color: #000000; ">        printf(</span><span style="color: #000000; ">"</span><span style="color: #000000; ">Child::Child(int val) @ 0x%08X\n</span><span style="color: #000000; ">"</span><span style="color: #000000; ">, </span><span style="color: #0000FF; ">this</span><span style="color: #000000; ">);<br /> </span><span style="color: #008080; ">13</span> <span style="color: #000000; ">    }<br /> </span><span style="color: #008080; ">14</span> <span style="color: #000000; "><br /> </span><span style="color: #008080; ">15</span> <span style="color: #000000; ">    </span><span style="color: #0000FF; ">void</span><span style="color: #000000; "> say()<br /> </span><span style="color: #008080; ">16</span> <span style="color: #000000; ">    {<br /> </span><span style="color: #008080; ">17</span> <span style="color: #000000; ">        printf(</span><span style="color: #000000; ">"</span><span style="color: #000000; ">void Child::say() @ 0x%08X\n</span><span style="color: #000000; ">"</span><span style="color: #000000; ">, </span><span style="color: #0000FF; ">this</span><span style="color: #000000; ">);<br /> </span><span style="color: #008080; ">18</span> <span style="color: #000000; ">        printf(</span><span style="color: #000000; ">"</span><span style="color: #000000; ">val = %d\n</span><span style="color: #000000; ">"</span><span style="color: #000000; ">, GetVal());<br /> </span><span style="color: #008080; ">19</span> <span style="color: #000000; ">    }<br /> </span><span style="color: #008080; ">20</span> <span style="color: #000000; "><br /> </span><span style="color: #008080; ">21</span> <span style="color: #000000; ">    </span><span style="color: #000000; ">~</span><span style="color: #000000; ">Child()<br /> </span><span style="color: #008080; ">22</span> <span style="color: #000000; ">    {<br /> </span><span style="color: #008080; ">23</span> <span style="color: #000000; ">        printf(</span><span style="color: #000000; ">"</span><span style="color: #000000; ">Child::~Child() @ 0x%08X\n</span><span style="color: #000000; ">"</span><span style="color: #000000; ">, </span><span style="color: #0000FF; ">this</span><span style="color: #000000; ">);<br /> </span><span style="color: #008080; ">24</span> <span style="color: #000000; ">    }<br /> </span><span style="color: #008080; ">25</span> <span style="color: #000000; ">};<br /> </span><span style="color: #008080; ">26</span> <span style="color: #000000; "><br /> </span><span style="color: #008080; ">27</span> <span style="color: #000000; "></span><span style="color: #0000FF; ">#endif</span><span style="color: #000000; "><br /> </span><span style="color: #008080; ">28</span> <span style="color: #000000; "></span></div> </div> <div></div> <div>main.cpp</div> <div> <div style="background-color:#eeeeee;font-size:13px;border:1px solid #CCCCCC;padding-right: 5px;padding-bottom: 4px;padding-left: 4px;padding-top: 4px;width: 98%;word-break:break-all"><!--<br /> <br /> Code highlighting produced by Actipro CodeHighlighter (freeware)<br /> http://www.CodeHighlighter.com/<br /> <br /> --><span style="color: #008080; ">  1</span> <span style="color: #000000; ">#include </span><span style="color: #000000; ">"</span><span style="color: #000000; ">base.h</span><span style="color: #000000; ">"</span><span style="color: #000000; "><br /> </span><span style="color: #008080; ">  2</span> <span style="color: #000000; ">#include </span><span style="color: #000000; ">"</span><span style="color: #000000; ">child.h</span><span style="color: #000000; ">"</span><span style="color: #000000; "><br /> </span><span style="color: #008080; ">  3</span> <span style="color: #000000; "><br /> </span><span style="color: #008080; ">  4</span> <span style="color: #000000; "></span><span style="color: #0000FF; ">static</span><span style="color: #000000; "> </span><span style="color: #0000FF; ">void</span><span style="color: #000000; "> test0();<br /> </span><span style="color: #008080; ">  5</span> <span style="color: #000000; "></span><span style="color: #0000FF; ">static</span><span style="color: #000000; "> </span><span style="color: #0000FF; ">void</span><span style="color: #000000; "> test();<br /> </span><span style="color: #008080; ">  6</span> <span style="color: #000000; "></span><span style="color: #0000FF; ">static</span><span style="color: #000000; "> </span><span style="color: #0000FF; ">void</span><span style="color: #000000; "> virfunc_call(Base </span><span style="color: #000000; ">*</span><span style="color: #0000FF; ">base</span><span style="color: #000000; ">);<br /> </span><span style="color: #008080; ">  7</span> <span style="color: #000000; "><br /> </span><span style="color: #008080; ">  8</span> <span style="color: #000000; "></span><span style="color: #0000FF; ">void</span><span style="color: #000000; "> test0()<br /> </span><span style="color: #008080; ">  9</span> <span style="color: #000000; ">{<br /> </span><span style="color: #008080; "> 10</span> <span style="color: #000000; ">    </span><span style="color: #0000FF; ">int</span><span style="color: #000000; "> src </span><span style="color: #000000; ">=</span><span style="color: #000000; "> </span><span style="color: #000000; ">1</span><span style="color: #000000; ">;<br /> </span><span style="color: #008080; "> 11</span> <span style="color: #000000; ">    </span><span style="color: #0000FF; ">int</span><span style="color: #000000; "> dst;   <br /> </span><span style="color: #008080; "> 12</span> <span style="color: #000000; "><br /> </span><span style="color: #008080; "> 13</span> <span style="color: #000000; ">#ifdef WIN32<br /> </span><span style="color: #008080; "> 14</span> <span style="color: #000000; ">    dst </span><span style="color: #000000; ">=</span><span style="color: #000000; "> src;<br /> </span><span style="color: #008080; "> 15</span> <span style="color: #000000; "></span><span style="color: #0000FF; ">#else</span><span style="color: #000000; "><br /> </span><span style="color: #008080; "> 16</span> <span style="color: #000000; ">    asm (</span><span style="color: #000000; ">"</span><span style="color: #000000; ">mov %1, %0\n\t</span><span style="color: #000000; ">"</span><span style="color: #000000; "><br /> </span><span style="color: #008080; "> 17</span> <span style="color: #000000; ">        </span><span style="color: #000000; ">"</span><span style="color: #000000; ">add $1, %0</span><span style="color: #000000; ">"</span><span style="color: #000000; "><br /> </span><span style="color: #008080; "> 18</span> <span style="color: #000000; ">        : </span><span style="color: #000000; ">"</span><span style="color: #000000; ">=r</span><span style="color: #000000; ">"</span><span style="color: #000000; "> (dst) <br /> </span><span style="color: #008080; "> 19</span> <span style="color: #000000; ">        : </span><span style="color: #000000; ">"</span><span style="color: #000000; ">r</span><span style="color: #000000; ">"</span><span style="color: #000000; "> (src));<br /> </span><span style="color: #008080; "> 20</span> <span style="color: #000000; "></span><span style="color: #0000FF; ">#endif</span><span style="color: #000000; "><br /> </span><span style="color: #008080; "> 21</span> <span style="color: #000000; "><br /> </span><span style="color: #008080; "> 22</span> <span style="color: #000000; ">    printf(</span><span style="color: #000000; ">"</span><span style="color: #000000; ">dst=%d\n</span><span style="color: #000000; ">"</span><span style="color: #000000; ">, dst);<br /> </span><span style="color: #008080; "> 23</span> <span style="color: #000000; ">}<br /> </span><span style="color: #008080; "> 24</span> <span style="color: #000000; "><br /> </span><span style="color: #008080; "> 25</span> <span style="color: #000000; "></span><span style="color: #0000FF; ">void</span><span style="color: #000000; "> test(Base </span><span style="color: #000000; ">*</span><span style="color: #0000FF; ">base</span><span style="color: #000000; ">)<br /> </span><span style="color: #008080; "> 26</span> <span style="color: #000000; ">{ <br /> </span><span style="color: #008080; "> 27</span> <span style="color: #000000; ">    </span><span style="color: #0000FF; ">int</span><span style="color: #000000; "> addr </span><span style="color: #000000; ">=</span><span style="color: #000000; "> </span><span style="color: #000000; ">0</span><span style="color: #000000; ">;<br /> </span><span style="color: #008080; "> 28</span> <span style="color: #000000; "><br /> </span><span style="color: #008080; "> 29</span> <span style="color: #000000; ">#ifdef WIN32<br /> </span><span style="color: #008080; "> 30</span> <span style="color: #000000; ">    printf(</span><span style="color: #000000; ">"</span><span style="color: #000000; ">[1] addr=0x%08X base=0x%P\n</span><span style="color: #000000; ">"</span><span style="color: #000000; ">, addr, </span><span style="color: #0000FF; ">base</span><span style="color: #000000; ">);<br /> </span><span style="color: #008080; "> 31</span> <span style="color: #000000; "></span><span style="color: #0000FF; ">#else</span><span style="color: #000000; "><br /> </span><span style="color: #008080; "> 32</span> <span style="color: #000000; ">    printf(</span><span style="color: #000000; ">"</span><span style="color: #000000; ">[1] addr=0x%08X base=0x%08X\n</span><span style="color: #000000; ">"</span><span style="color: #000000; ">, addr, </span><span style="color: #0000FF; ">base</span><span style="color: #000000; ">);<br /> </span><span style="color: #008080; "> 33</span> <span style="color: #000000; "></span><span style="color: #0000FF; ">#endif</span><span style="color: #000000; "><br /> </span><span style="color: #008080; "> 34</span> <span style="color: #000000; "><br /> </span><span style="color: #008080; "> 35</span> <span style="color: #000000; ">#ifdef WIN32<br /> </span><span style="color: #008080; "> 36</span> <span style="color: #000000; ">    addr </span><span style="color: #000000; ">=</span><span style="color: #000000; "> </span><span style="color: #000000; ">*</span><span style="color: #000000; ">((</span><span style="color: #0000FF; ">int</span><span style="color: #000000; "> </span><span style="color: #000000; ">*</span><span style="color: #000000; ">)</span><span style="color: #0000FF; ">base</span><span style="color: #000000; ">);<br /> </span><span style="color: #008080; "> 37</span> <span style="color: #000000; "></span><span style="color: #0000FF; ">#else</span><span style="color: #000000; "><br /> </span><span style="color: #008080; "> 38</span> <span style="color: #000000; ">    asm (<br /> </span><span style="color: #008080; "> 39</span> <span style="color: #000000; ">        </span><span style="color: #000000; ">"</span><span style="color: #000000; ">movl %0, %1\n\t</span><span style="color: #000000; ">"</span><span style="color: #000000; "><br /> </span><span style="color: #008080; "> 40</span> <span style="color: #000000; ">        : </span><span style="color: #000000; ">"</span><span style="color: #000000; ">=r</span><span style="color: #000000; ">"</span><span style="color: #000000; "> (addr)<br /> </span><span style="color: #008080; "> 41</span> <span style="color: #000000; ">        : </span><span style="color: #000000; ">"</span><span style="color: #000000; ">r</span><span style="color: #000000; ">"</span><span style="color: #000000; "> (</span><span style="color: #0000FF; ">base</span><span style="color: #000000; ">)<br /> </span><span style="color: #008080; "> 42</span> <span style="color: #000000; ">    );<br /> </span><span style="color: #008080; "> 43</span> <span style="color: #000000; "></span><span style="color: #0000FF; ">#endif</span><span style="color: #000000; "><br /> </span><span style="color: #008080; "> 44</span> <span style="color: #000000; "><br /> </span><span style="color: #008080; "> 45</span> <span style="color: #000000; ">#ifdef WIN32<br /> </span><span style="color: #008080; "> 46</span> <span style="color: #000000; ">    printf(</span><span style="color: #000000; ">"</span><span style="color: #000000; ">[2] addr=0x%08X base=0x%P\n</span><span style="color: #000000; ">"</span><span style="color: #000000; ">, addr, </span><span style="color: #0000FF; ">base</span><span style="color: #000000; ">);<br /> </span><span style="color: #008080; "> 47</span> <span style="color: #000000; "></span><span style="color: #0000FF; ">#else</span><span style="color: #000000; "><br /> </span><span style="color: #008080; "> 48</span> <span style="color: #000000; ">    printf(</span><span style="color: #000000; ">"</span><span style="color: #000000; ">[2] addr=0x%08X base=0x%08X\n</span><span style="color: #000000; ">"</span><span style="color: #000000; ">, addr, </span><span style="color: #0000FF; ">base</span><span style="color: #000000; ">);<br /> </span><span style="color: #008080; "> 49</span> <span style="color: #000000; "></span><span style="color: #0000FF; ">#endif</span><span style="color: #000000; "><br /> </span><span style="color: #008080; "> 50</span> <span style="color: #000000; ">}<br /> </span><span style="color: #008080; "> 51</span> <span style="color: #000000; "><br /> </span><span style="color: #008080; "> 52</span> <span style="color: #000000; "></span><span style="color: #0000FF; ">static</span><span style="color: #000000; "> </span><span style="color: #0000FF; ">void</span><span style="color: #000000; "> virfunc_call(Base </span><span style="color: #000000; ">*</span><span style="color: #0000FF; ">base</span><span style="color: #000000; ">)<br /> </span><span style="color: #008080; "> 53</span> <span style="color: #000000; ">{<br /> </span><span style="color: #008080; "> 54</span> <span style="color: #000000; ">    typedef </span><span style="color: #0000FF; ">void</span><span style="color: #000000; "> (</span><span style="color: #000000; ">*</span><span style="color: #000000; ">FUNC)();<br /> </span><span style="color: #008080; "> 55</span> <span style="color: #000000; "><br /> </span><span style="color: #008080; "> 56</span> <span style="color: #000000; ">    </span><span style="color: #0000FF; ">int</span><span style="color: #000000; "> </span><span style="color: #000000; ">*</span><span style="color: #000000; ">pAddrBase </span><span style="color: #000000; ">=</span><span style="color: #000000; "> (</span><span style="color: #0000FF; ">int</span><span style="color: #000000; "> </span><span style="color: #000000; ">*</span><span style="color: #000000; ">)</span><span style="color: #0000FF; ">base</span><span style="color: #000000; ">;<br /> </span><span style="color: #008080; "> 57</span> <span style="color: #000000; ">    </span><span style="color: #0000FF; ">int</span><span style="color: #000000; "> addr </span><span style="color: #000000; ">=</span><span style="color: #000000; "> </span><span style="color: #000000; ">*</span><span style="color: #000000; ">(</span><span style="color: #0000FF; ">int</span><span style="color: #000000; "> </span><span style="color: #000000; ">*</span><span style="color: #000000; ">)</span><span style="color: #0000FF; ">base</span><span style="color: #000000; ">;<br /> </span><span style="color: #008080; "> 58</span> <span style="color: #000000; ">    </span><span style="color: #0000FF; ">int</span><span style="color: #000000; "> </span><span style="color: #000000; ">*</span><span style="color: #000000; ">pVirtualFuncBase </span><span style="color: #000000; ">=</span><span style="color: #000000; "> (</span><span style="color: #0000FF; ">int</span><span style="color: #000000; "> </span><span style="color: #000000; ">*</span><span style="color: #000000; ">)(</span><span style="color: #000000; ">*</span><span style="color: #000000; ">pAddrBase);<br /> </span><span style="color: #008080; "> 59</span> <span style="color: #000000; "><br /> </span><span style="color: #008080; "> 60</span> <span style="color: #000000; ">#ifdef WIN32<br /> </span><span style="color: #008080; "> 61</span> <span style="color: #000000; ">    printf(</span><span style="color: #000000; ">"</span><span style="color: #000000; ">\nvirfunc=0x%P\npAddrBase=0x%P\npVirtualFuncBase=0x%P\n\n</span><span style="color: #000000; ">"</span><span style="color: #000000; ">, virfunc_call, pAddrBase, pVirtualFuncBase);<br /> </span><span style="color: #008080; "> 62</span> <span style="color: #000000; "></span><span style="color: #0000FF; ">#else</span><span style="color: #000000; "><br /> </span><span style="color: #008080; "> 63</span> <span style="color: #000000; ">    printf(</span><span style="color: #000000; ">"</span><span style="color: #000000; ">\nvirfunc=0x%08X\npAddrBase=0x%08X\npVirtualFuncBase=0x%08X\n\n</span><span style="color: #000000; ">"</span><span style="color: #000000; ">, virfunc_call, pAddrBase, pVirtualFuncBase);<br /> </span><span style="color: #008080; "> 64</span> <span style="color: #000000; "></span><span style="color: #0000FF; ">#endif</span><span style="color: #000000; "><br /> </span><span style="color: #008080; "> 65</span> <span style="color: #000000; "><br /> </span><span style="color: #008080; "> 66</span> <span style="color: #000000; ">    FUNC func </span><span style="color: #000000; ">=</span><span style="color: #000000; "> reinterpret_cast</span><span style="color: #000000; "><</span><span style="color: #000000; ">FUNC</span><span style="color: #000000; ">></span><span style="color: #000000; ">(</span><span style="color: #000000; ">*</span><span style="color: #000000; ">pVirtualFuncBase);<br /> </span><span style="color: #008080; "> 67</span> <span style="color: #000000; "><br /> </span><span style="color: #008080; "> 68</span> <span style="color: #000000; ">#ifdef WIN32<br /> </span><span style="color: #008080; "> 69</span> <span style="color: #000000; ">    __asm {<br /> </span><span style="color: #008080; "> 70</span> <span style="color: #000000; ">        mov ecx, </span><span style="color: #0000FF; ">base</span><span style="color: #000000; "><br /> </span><span style="color: #008080; "> 71</span> <span style="color: #000000; ">    }<br /> </span><span style="color: #008080; "> 72</span> <span style="color: #000000; "></span><span style="color: #0000FF; ">#else</span><span style="color: #000000; "><br /> </span><span style="color: #008080; "> 73</span> <span style="color: #000000; ">    __asm__ __volatile__(<br /> </span><span style="color: #008080; "> 74</span> <span style="color: #000000; ">        </span><span style="color: #000000; ">"</span><span style="color: #000000; ">movl %0, %%ecx</span><span style="color: #000000; ">"</span><span style="color: #000000; "><br /> </span><span style="color: #008080; "> 75</span> <span style="color: #000000; ">        :<br /> </span><span style="color: #008080; "> 76</span> <span style="color: #000000; ">        : </span><span style="color: #000000; ">"</span><span style="color: #000000; ">r</span><span style="color: #000000; ">"</span><span style="color: #000000; "> (</span><span style="color: #0000FF; ">base</span><span style="color: #000000; ">)<br /> </span><span style="color: #008080; "> 77</span> <span style="color: #000000; ">        :<br /> </span><span style="color: #008080; "> 78</span> <span style="color: #000000; ">    );<br /> </span><span style="color: #008080; "> 79</span> <span style="color: #000000; "></span><span style="color: #0000FF; ">#endif</span><span style="color: #000000; "><br /> </span><span style="color: #008080; "> 80</span> <span style="color: #000000; "><br /> </span><span style="color: #008080; "> 81</span> <span style="color: #000000; ">    func();<br /> </span><span style="color: #008080; "> 82</span> <span style="color: #000000; ">}<br /> </span><span style="color: #008080; "> 83</span> <span style="color: #000000; "><br /> </span><span style="color: #008080; "> 84</span> <span style="color: #000000; "></span><span style="color: #0000FF; ">int</span><span style="color: #000000; "> main(</span><span style="color: #0000FF; ">int</span><span style="color: #000000; "> argc, </span><span style="color: #0000FF; ">char</span><span style="color: #000000; "> </span><span style="color: #000000; ">*</span><span style="color: #000000; ">argv[])<br /> </span><span style="color: #008080; "> 85</span> <span style="color: #000000; ">{<br /> </span><span style="color: #008080; "> 86</span> <span style="color: #000000; ">    Base </span><span style="color: #000000; ">*</span><span style="color: #000000; ">base1 </span><span style="color: #000000; ">=</span><span style="color: #000000; "> nullptr, </span><span style="color: #000000; ">*</span><span style="color: #000000; ">base2 </span><span style="color: #000000; ">=</span><span style="color: #000000; "> nullptr;<br /> </span><span style="color: #008080; "> 87</span> <span style="color: #000000; "><br /> </span><span style="color: #008080; "> 88</span> <span style="color: #000000; ">    base1 </span><span style="color: #000000; ">=</span><span style="color: #000000; "> </span><span style="color: #0000FF; ">new</span><span style="color: #000000; "> Base(</span><span style="color: #000000; ">1</span><span style="color: #000000; ">);<br /> </span><span style="color: #008080; "> 89</span> <span style="color: #000000; ">    </span><span style="color: #008000; ">//</span><span style="color: #008000; "> base1->say();</span><span style="color: #008000; "><br /> </span><span style="color: #008080; "> 90</span> <span style="color: #008000; "></span><span style="color: #000000; ">    virfunc_call(base1);<br /> </span><span style="color: #008080; "> 91</span> <span style="color: #000000; ">    </span><span style="color: #008000; ">//</span><span style="color: #008000; "> test(base1);</span><span style="color: #008000; "><br /> </span><span style="color: #008080; "> 92</span> <span style="color: #008000; "></span><span style="color: #000000; ">    delete base1;<br /> </span><span style="color: #008080; "> 93</span> <span style="color: #000000; "><br /> </span><span style="color: #008080; "> 94</span> <span style="color: #000000; ">    base2 </span><span style="color: #000000; ">=</span><span style="color: #000000; "> </span><span style="color: #0000FF; ">new</span><span style="color: #000000; "> Child(</span><span style="color: #000000; ">2</span><span style="color: #000000; ">);<br /> </span><span style="color: #008080; "> 95</span> <span style="color: #000000; ">    </span><span style="color: #008000; ">//</span><span style="color: #008000; "> base2->say();</span><span style="color: #008000; "><br /> </span><span style="color: #008080; "> 96</span> <span style="color: #008000; "></span><span style="color: #000000; ">    virfunc_call(base2);<br /> </span><span style="color: #008080; "> 97</span> <span style="color: #000000; ">    </span><span style="color: #008000; ">//</span><span style="color: #008000; "> test(base2);</span><span style="color: #008000; "><br /> </span><span style="color: #008080; "> 98</span> <span style="color: #008000; "></span><span style="color: #000000; ">    delete base2;<br /> </span><span style="color: #008080; "> 99</span> <span style="color: #000000; "><br /> </span><span style="color: #008080; ">100</span> <span style="color: #000000; ">    </span><span style="color: #0000FF; ">return</span><span style="color: #000000; "> </span><span style="color: #000000; ">0</span><span style="color: #000000; ">;<br /> </span><span style="color: #008080; ">101</span> <span style="color: #000000; ">}</span></div> </div> <br/><br/> <div>VC++</div> <div>cl /DWIN32 main.cpp</div> <br/><br/> <div>G++</div> <div>g++ -o main main.cpp</div> <img src ="http://m.shnenglu.com/jackyxinli/aggbug/217003.html" width = "1" height = "1" /><br><br><div align=right><a style="text-decoration:none;" href="http://m.shnenglu.com/jackyxinli/" target="_blank">jacky_zz</a> 2019-11-28 11:05 <a href="http://m.shnenglu.com/jackyxinli/archive/2019/11/28/217003.html#Feedback" target="_blank" style="text-decoration:none;">鍙戣〃璇勮</a></div>]]></description></item><item><title>[ASM] 寮曞紼嬪簭浠庣鐩樹笂鍔犺澆絎簩鎵囧尯鍚庡畨瑁?x80涓柇騫惰皟鐢?/title><link>http://m.shnenglu.com/jackyxinli/archive/2015/01/08/209435.html</link><dc:creator>jacky_zz</dc:creator><author>jacky_zz</author><pubDate>Thu, 08 Jan 2015 06:34:00 GMT</pubDate><guid>http://m.shnenglu.com/jackyxinli/archive/2015/01/08/209435.html</guid><wfw:comment>http://m.shnenglu.com/jackyxinli/comments/209435.html</wfw:comment><comments>http://m.shnenglu.com/jackyxinli/archive/2015/01/08/209435.html#Feedback</comments><slash:comments>0</slash:comments><wfw:commentRss>http://m.shnenglu.com/jackyxinli/comments/commentRss/209435.html</wfw:commentRss><trackback:ping>http://m.shnenglu.com/jackyxinli/services/trackbacks/209435.html</trackback:ping><description><![CDATA[<strong>bootloader.asm</strong><br /> <div style="background-color:#eeeeee;font-size:13px;border:1px solid #CCCCCC;padding-right: 5px;padding-bottom: 4px;padding-left: 4px;padding-top: 4px;width: 98%;word-break:break-all"><!--<br /> <br /> Code highlighting produced by Actipro CodeHighlighter (freeware)<br /> http://www.CodeHighlighter.com/<br /> <br /> --><span style="color: #000000; ">    org </span><span style="color: #000000; ">0x7c00</span><span style="color: #000000; "><br /> start:<br />     jmp main_entry<br /> <br /> stack:<br />     times </span><span style="color: #000000; ">128</span><span style="color: #000000; "> db </span><span style="color: #000000; ">0</span><span style="color: #000000; "><br /> tos:<br />     db </span><span style="color: #000000; ">0</span><span style="color: #000000; "><br /> <br /> main_entry:<br />     mov ax, cs<br />     mov ds, ax<br /> <br />     mov ax, stack<br />     mov ss, ax<br />     mov sp, start<br /> <br />     ; initialize es:bx, read data to </span><span style="color: #000000; ">0x0000</span><span style="color: #000000; ">:</span><span style="color: #000000; ">0x7e00</span><span style="color: #000000; "><br />     mov ax, </span><span style="color: #000000; ">0x0000</span><span style="color: #000000; "><br />     mov es, ax<br />     mov bx, </span><span style="color: #000000; ">0x7c00</span><span style="color: #000000; ">+</span><span style="color: #000000; ">0x200</span><span style="color: #000000; "><br /> <br />     mov ah, </span><span style="color: #000000; ">0x02</span><span style="color: #000000; ">    ; read function<br />     mov al, </span><span style="color: #000000; ">0x01</span><span style="color: #000000; ">    ; read </span><span style="color: #000000; ">1</span><span style="color: #000000; "> sectors<br />     mov ch, </span><span style="color: #000000; ">0x00</span><span style="color: #000000; ">    ; <br />     mov cl, </span><span style="color: #000000; ">0x02</span><span style="color: #000000; ">    ; read from 2nd section<br />     mov dh, </span><span style="color: #000000; ">0x00</span><span style="color: #000000; ">    ;<br />     mov dl, </span><span style="color: #000000; ">0x80</span><span style="color: #000000; ">    ; read from 1st hard disk<br />     </span><span style="color: #0000FF; ">int</span><span style="color: #000000; "> </span><span style="color: #000000; ">0x13</span><span style="color: #000000; "><br />     jc .die<br /> <br />     ; install interrupt </span><span style="color: #000000; ">0x80</span><span style="color: #000000; "><br />     call </span><span style="color: #000000; ">0x7e00</span><span style="color: #000000; "><br /> <br />     ; call interrupt </span><span style="color: #000000; ">0x80</span><span style="color: #000000; "><br />     mov ax, msg1<br />     </span><span style="color: #0000FF; ">int</span><span style="color: #000000; "> </span><span style="color: #000000; ">0x80</span><span style="color: #000000; "><br /> <br />     ; call interrupt </span><span style="color: #000000; ">0x80</span><span style="color: #000000; "><br />     mov ax, msg2<br />     </span><span style="color: #0000FF; ">int</span><span style="color: #000000; "> </span><span style="color: #000000; ">0x80</span><span style="color: #000000; "><br /> <br /> .die:<br />     jmp $<br /> <br /> print_char:    <br />     mov ah, </span><span style="color: #000000; ">0x0e</span><span style="color: #000000; "><br />     </span><span style="color: #0000FF; ">int</span><span style="color: #000000; "> </span><span style="color: #000000; ">0x10</span><span style="color: #000000; "><br />     ret<br /> <br /> msg1:    db </span><span style="color: #000000; ">"</span><span style="color: #000000; ">Loading system <img src="http://m.shnenglu.com/Images/dot.gif" alt="" /></span><span style="color: #000000; ">"</span><span style="color: #000000; ">, </span><span style="color: #000000; ">0x0d</span><span style="color: #000000; ">, </span><span style="color: #000000; ">0x0a</span><span style="color: #000000; ">, </span><span style="color: #000000; ">0</span><span style="color: #000000; "><br /> msg2:    db </span><span style="color: #000000; ">"</span><span style="color: #000000; ">Hello, World!</span><span style="color: #000000; ">"</span><span style="color: #000000; ">, </span><span style="color: #000000; ">0x0d</span><span style="color: #000000; ">, </span><span style="color: #000000; ">0x0a</span><span style="color: #000000; ">, </span><span style="color: #000000; ">0</span><span style="color: #000000; "><br /> crlf:    db </span><span style="color: #000000; ">0x0d</span><span style="color: #000000; ">, </span><span style="color: #000000; ">0x0a</span><span style="color: #000000; ">, </span><span style="color: #000000; ">0</span><span style="color: #000000; "><br /> <br /> fill_zero:<br />     times </span><span style="color: #000000; ">510</span><span style="color: #000000; ">-</span><span style="color: #000000; ">($</span><span style="color: #000000; ">-</span><span style="color: #000000; ">$$) db </span><span style="color: #000000; ">0</span><span style="color: #000000; "><br /> <br /> magic:<br />     db </span><span style="color: #000000; ">0x55</span><span style="color: #000000; ">, </span><span style="color: #000000; ">0xAA</span></div> <br /> <strong>lib16.asm</strong><br /> <div style="background-color: #eeeeee; font-size: 13px; border: 1px solid #cccccc; padding: 4px 5px 4px 4px; width: 98%; word-break: break-all;"><!--<br /> <br /> Code highlighting produced by Actipro CodeHighlighter (freeware)<br /> http://www.CodeHighlighter.com/<br /> <br /> --><span style="color: #000000; ">    org </span><span style="color: #000000; ">0x7e00</span><span style="color: #000000; "><br /> install_int:<br />     mov ax, </span><span style="color: #000000; ">0</span><span style="color: #000000; "><br />     mov es, ax<br /> <br />         mov ax, int_0x80<br />     mov bx, </span><span style="color: #000000; ">0x80</span><span style="color: #000000; ">*</span><span style="color: #000000; ">4</span><span style="color: #000000; "><br />     mov word [es:bx], ax    ; ip<br />     mov word [es:(bx</span><span style="color: #000000; ">+</span><span style="color: #000000; ">2</span><span style="color: #000000; ">)], </span><span style="color: #000000; ">0</span><span style="color: #000000; ">    ; cs<br /> <br />     ret<br /> <br /> int_0x80:<br />     pusha<br /> <br />     mov si, ax<br />     mov ah, </span><span style="color: #000000; ">0x0e</span><span style="color: #000000; "><br />     mov al, [ds:si]<br /> <br /> .loop:<br />     cmp al, </span><span style="color: #000000; ">0</span><span style="color: #000000; "><br />     je .exit<br />     </span><span style="color: #0000FF; ">int</span><span style="color: #000000; "> </span><span style="color: #000000; ">0x10</span><span style="color: #000000; "><br /> <br />     inc si<br />     mov al, [ds:si]<br /> <br />     jmp .loop<br /> .exit:<br />     popa<br />     iret<br /> <br /> fill_zero:<br />     times </span><span style="color: #000000; ">512</span><span style="color: #000000; ">-</span><span style="color: #000000; ">($</span><span style="color: #000000; ">-</span><span style="color: #000000; ">$$) db </span><span style="color: #000000; ">0</span></div> <br /><strong>緇撴灉鍥撅細</strong><br /><img alt="" src="http://m.shnenglu.com/images/cppblog_com/jackyxinli/result.png" height="563" width="656" /><img src ="http://m.shnenglu.com/jackyxinli/aggbug/209435.html" width = "1" height = "1" /><br><br><div align=right><a style="text-decoration:none;" href="http://m.shnenglu.com/jackyxinli/" target="_blank">jacky_zz</a> 2015-01-08 14:34 <a href="http://m.shnenglu.com/jackyxinli/archive/2015/01/08/209435.html#Feedback" target="_blank" style="text-decoration:none;">鍙戣〃璇勮</a></div>]]></description></item><item><title>[ASM] 閫掑綊璁$畻闃朵箻http://m.shnenglu.com/jackyxinli/archive/2014/12/28/209326.htmljacky_zzjacky_zzSun, 28 Dec 2014 13:08:00 GMThttp://m.shnenglu.com/jackyxinli/archive/2014/12/28/209326.htmlhttp://m.shnenglu.com/jackyxinli/comments/209326.htmlhttp://m.shnenglu.com/jackyxinli/archive/2014/12/28/209326.html#Feedback0http://m.shnenglu.com/jackyxinli/comments/commentRss/209326.htmlhttp://m.shnenglu.com/jackyxinli/services/trackbacks/209326.html 

    org 100h
    jmp start
    
stack:
    db 
256 dup(0)
topofstack:
    db 
0

; add your code here
start:
    mov ax, cs
    mov ds, ax
    
    mov ss, ax
    mov sp, topofstack
    
    mov ax, 
0x0003
    push ax
    call f
    pop ax
    hlt
    
f:
    push bp
    push ax
    
    mov bp, sp
    mov ax, [bp
+6]
    cmp ax, 
0x0001
    je exit
    
    dec ax
    push ax
    call f
    pop ax
    
    mul [bp
+6]
    
exit:
    mov [bp
+6], ax
    pop ax
    pop bp
    ret

 



jacky_zz 2014-12-28 21:08 鍙戣〃璇勮
]]>
[ASM] 鎵撳嵃鎸囧畾鍦板潃鐨勫唴瀛樺唴瀹?/title><link>http://m.shnenglu.com/jackyxinli/archive/2014/12/26/209314.html</link><dc:creator>jacky_zz</dc:creator><author>jacky_zz</author><pubDate>Fri, 26 Dec 2014 08:09:00 GMT</pubDate><guid>http://m.shnenglu.com/jackyxinli/archive/2014/12/26/209314.html</guid><wfw:comment>http://m.shnenglu.com/jackyxinli/comments/209314.html</wfw:comment><comments>http://m.shnenglu.com/jackyxinli/archive/2014/12/26/209314.html#Feedback</comments><slash:comments>0</slash:comments><wfw:commentRss>http://m.shnenglu.com/jackyxinli/comments/commentRss/209314.html</wfw:commentRss><trackback:ping>http://m.shnenglu.com/jackyxinli/services/trackbacks/209314.html</trackback:ping><description><![CDATA[<div style="background-color:#eeeeee;font-size:13px;border:1px solid #CCCCCC;padding-right: 5px;padding-bottom: 4px;padding-left: 4px;padding-top: 4px;width: 98%;word-break:break-all"><!--<br /><br />Code highlighting produced by Actipro CodeHighlighter (freeware)<br />http://www.CodeHighlighter.com/<br /><br />--><span style="color: #000000; ">main:<br />    org </span><span style="color: #000000; ">0x0100</span><span style="color: #000000; "><br />    jmp start<br /><br />stack:<br />    db </span><span style="color: #000000; ">256</span><span style="color: #000000; "> dup(</span><span style="color: #000000; ">0</span><span style="color: #000000; ">)<br />tos:<br />    dw </span><span style="color: #000000; ">0</span><span style="color: #000000; "><br /><br />start:<br />    mov ax, cs<br />    mov ds, ax<br />    mov ss, ax<br />    mov sp, tos<br />    <br />    mov ax, end<br />    mov bx, main<br />    sub ax, bx<br />    <br />    mov bx, </span><span style="color: #000000; ">2</span><span style="color: #000000; "><br />    div bx<br />    cmp dx, </span><span style="color: #000000; ">0</span><span style="color: #000000; "><br />    je next_step<br />    inc ax<br />    <br />next_step:<br />    mov bx, ax<br />    mov si, </span><span style="color: #000000; ">0</span><span style="color: #000000; "><br />    mov di, </span><span style="color: #000000; ">0</span><span style="color: #000000; "><br />    <br />.</span><span style="color: #000000; ">0</span><span style="color: #000000; ">:<br />    cmp di, </span><span style="color: #000000; ">0</span><span style="color: #000000; "><br />    je .</span><span style="color: #000000; ">1</span><span style="color: #000000; "><br />    <br />    mov ax, </span><span style="color: #000000; ">0x0000</span><span style="color: #000000; "><br />    push ax<br />    call print_char<br />    pop ax<br /><br />.</span><span style="color: #000000; ">1</span><span style="color: #000000; ">:    <br />    mov dx, cs:[si]<br />    mov ch, </span><span style="color: #000000; ">0x04</span><span style="color: #000000; "><br />    mov cl, </span><span style="color: #000000; ">0x04</span><span style="color: #000000; "><br />        <br />.</span><span style="color: #000000; ">2</span><span style="color: #000000; ">:<br />    mov ax, </span><span style="color: #000000; ">0</span><span style="color: #000000; "><br />    rol dx, cl<br />    <br />    mov al, dl<br />    and al, </span><span style="color: #000000; ">0x0f</span><span style="color: #000000; "><br />    add al, </span><span style="color: #000000; ">0x30</span><span style="color: #000000; "><br />    cmp al, </span><span style="color: #000000; ">0x3a</span><span style="color: #000000; "><br />    jl .</span><span style="color: #000000; ">3</span><span style="color: #000000; "><br />    add al, </span><span style="color: #000000; ">0x07</span><span style="color: #000000; "><br />.</span><span style="color: #000000; ">3</span><span style="color: #000000; ">:<br />    <br />    push ax<br />    call print_char<br />    pop ax<br />    <br />    dec ch<br />    cmp ch, </span><span style="color: #000000; ">0</span><span style="color: #000000; "><br />    jne .</span><span style="color: #000000; ">2</span><span style="color: #000000; "><br />     <br />    inc di<br />    add si, </span><span style="color: #000000; ">2</span><span style="color: #000000; "><br />    <br />    dec bx<br />    cmp bx, </span><span style="color: #000000; ">0</span><span style="color: #000000; "><br />    jne .</span><span style="color: #000000; ">0</span><span style="color: #000000; "><br />    <br />    hlt<br /><br />print_char:<br />    push bp<br />    push ax<br />    push bx<br />    <br />    mov bp, sp<br />    mov ax, [bp</span><span style="color: #000000; ">+</span><span style="color: #000000; ">8</span><span style="color: #000000; ">]<br />    mov ah, </span><span style="color: #000000; ">0x0e</span><span style="color: #000000; "><br />    mov bx, </span><span style="color: #000000; ">0x0000</span><span style="color: #000000; "><br />    </span><span style="color: #0000FF; ">int</span><span style="color: #000000; "> </span><span style="color: #000000; ">0x10</span><span style="color: #000000; "><br /><br />    pop bx<br />    pop ax<br />    pop bp<br />    ret<br /><br />end:<br />    dw </span><span style="color: #000000; ">0</span></div><img src ="http://m.shnenglu.com/jackyxinli/aggbug/209314.html" width = "1" height = "1" /><br><br><div align=right><a style="text-decoration:none;" href="http://m.shnenglu.com/jackyxinli/" target="_blank">jacky_zz</a> 2014-12-26 16:09 <a href="http://m.shnenglu.com/jackyxinli/archive/2014/12/26/209314.html#Feedback" target="_blank" style="text-decoration:none;">鍙戣〃璇勮</a></div>]]></description></item><item><title>[ASM] 鏄劇ず鍒跺畾孌靛強闀垮害鐨勫唴瀛樺?/title><link>http://m.shnenglu.com/jackyxinli/archive/2014/12/19/209259.html</link><dc:creator>jacky_zz</dc:creator><author>jacky_zz</author><pubDate>Fri, 19 Dec 2014 14:53:00 GMT</pubDate><guid>http://m.shnenglu.com/jackyxinli/archive/2014/12/19/209259.html</guid><wfw:comment>http://m.shnenglu.com/jackyxinli/comments/209259.html</wfw:comment><comments>http://m.shnenglu.com/jackyxinli/archive/2014/12/19/209259.html#Feedback</comments><slash:comments>0</slash:comments><wfw:commentRss>http://m.shnenglu.com/jackyxinli/comments/commentRss/209259.html</wfw:commentRss><trackback:ping>http://m.shnenglu.com/jackyxinli/services/trackbacks/209259.html</trackback:ping><description><![CDATA[<div style="background-color:#eeeeee;font-size:13px;border:1px solid #CCCCCC;padding-right: 5px;padding-bottom: 4px;padding-left: 4px;padding-top: 4px;width: 98%;word-break:break-all"><!--<br /><br />Code highlighting produced by Actipro CodeHighlighter (freeware)<br />http://www.CodeHighlighter.com/<br /><br />--><span style="color: #000000; ">; You may customize </span><span style="color: #0000FF; ">this</span><span style="color: #000000; "> and other start</span><span style="color: #000000; ">-</span><span style="color: #000000; ">up templates; <br />; The location of </span><span style="color: #0000FF; ">this</span><span style="color: #000000; "> template </span><span style="color: #0000FF; ">is</span><span style="color: #000000; "> c:\emu8086\inc\0_com_template.txt<br /><br />    org 100h<br />start:<br />    jmp main<br /><br />stack:<br />    db </span><span style="color: #000000; ">256</span><span style="color: #000000; "> dup(</span><span style="color: #000000; ">0</span><span style="color: #000000; ">)<br />code_len:<br />    dw </span><span style="color: #000000; ">0</span><span style="color: #000000; "> <br />    <br />; add your code here<br />main:<br />    mov ax, cs<br />    mov ds, ax<br />    mov ss, ax<br />    mov sp, stack</span><span style="color: #000000; ">+</span><span style="color: #000000; ">256</span><span style="color: #000000; "><br />    <br />    mov ax, end<br />    mov bx, main<br />    sub ax, bx<br />    mov bx, </span><span style="color: #000000; ">2</span><span style="color: #000000; "><br />    div bx<br />    <br />    cmp dx, </span><span style="color: #000000; ">0</span><span style="color: #000000; "><br />    je next_step<br />    inc ax<br />          <br />next_step:<br />    mov bx, code_len<br />    mov [bx], ax<br />    mov bx, main<br />    <br />    push ax<br />    push bx<br />    push cs<br />    call dump_memory<br />   <br />    pop ax<br />    pop bx<br />    pop ax<br />    hlt         <br />    <br />dump_memory:<br />    push bp<br />    push ax<br />    push bx<br />    push cx<br />    push dx<br />    push ds<br />    <br />    mov bp, sp    <br />    mov ax, [bp</span><span style="color: #000000; ">+</span><span style="color: #000000; ">14</span><span style="color: #000000; ">]<br />    mov bx, [bp</span><span style="color: #000000; ">+</span><span style="color: #000000; ">16</span><span style="color: #000000; ">]<br />    mov cx, [bp</span><span style="color: #000000; ">+</span><span style="color: #000000; ">18</span><span style="color: #000000; ">]<br />    xor dx, dx<br />    mov ds, ax<br />    <br />rotate_memory:<br />    mov ax, ds:[bx]<br />    push ax<br />    call write_hex<br />    pop ax<br />    add bx, </span><span style="color: #000000; ">2</span><span style="color: #000000; "><br />    loop rotate_memory  <br />    <br />    pop ax<br />    mov ds, ax<br />    <br />    pop dx<br />    pop cx<br />    pop bx<br />    pop ax<br />    pop bp<br />    ret<br />    <br />write_hex:<br />    push bp<br />    push ax<br />    push bx<br />    push cx<br />    push dx<br />    <br />    mov bp, sp<br />    mov bx, [bp</span><span style="color: #000000; ">+</span><span style="color: #000000; ">12</span><span style="color: #000000; ">]<br />    <br />    xor ax, ax<br />    xor cx, cx<br />    mov ch, </span><span style="color: #000000; ">4</span><span style="color: #000000; "> <br />    <br />rotate:<br />    mov cl, </span><span style="color: #000000; ">4</span><span style="color: #000000; "><br />    rol bx, cl<br />    mov al, bl<br />    and al, </span><span style="color: #000000; ">0x0f</span><span style="color: #000000; "><br />    add al, </span><span style="color: #000000; ">0x30</span><span style="color: #000000; "><br />    cmp al, </span><span style="color: #000000; ">0x3a</span><span style="color: #000000; "><br />    jl printit<br />    add al, </span><span style="color: #000000; ">0x07</span><span style="color: #000000; "><br />printit:<br />    mov dl, al<br />    push dx<br />    call write_char<br />    pop dx<br />    <br />    dec ch<br />    jnz rotate<br />    <br />    mov dx, </span><span style="color: #000000; ">0x0000</span><span style="color: #000000; "><br />    push dx<br />    call write_char<br />    pop dx<br />    <br />    pop dx<br />    pop cx<br />    pop bx<br />    pop ax<br />    pop bp<br />    ret<br />    <br />write_char:<br />    push bp<br />    push ax<br />    push dx<br />    <br />    mov bp, sp<br />    mov ah, </span><span style="color: #000000; ">0x02</span><span style="color: #000000; "><br />    mov dx, [bp</span><span style="color: #000000; ">+</span><span style="color: #000000; ">8</span><span style="color: #000000; ">]<br />    </span><span style="color: #0000FF; ">int</span><span style="color: #000000; "> </span><span style="color: #000000; ">0x21</span><span style="color: #000000; "> <br />    <br />    pop dx<br />    pop ax<br />    pop bp<br />    ret<br />    <br />end: db </span><span style="color: #000000; ">0x55</span><span style="color: #000000; ">,</span><span style="color: #000000; ">0xaa</span></div><img src ="http://m.shnenglu.com/jackyxinli/aggbug/209259.html" width = "1" height = "1" /><br><br><div align=right><a style="text-decoration:none;" href="http://m.shnenglu.com/jackyxinli/" target="_blank">jacky_zz</a> 2014-12-19 22:53 <a href="http://m.shnenglu.com/jackyxinli/archive/2014/12/19/209259.html#Feedback" target="_blank" style="text-decoration:none;">鍙戣〃璇勮</a></div>]]></description></item><item><title>[ASM] 鍒╃敤鍫嗘爤浼犻掑弬鏁?/title><link>http://m.shnenglu.com/jackyxinli/archive/2014/12/18/209227.html</link><dc:creator>jacky_zz</dc:creator><author>jacky_zz</author><pubDate>Thu, 18 Dec 2014 09:10:00 GMT</pubDate><guid>http://m.shnenglu.com/jackyxinli/archive/2014/12/18/209227.html</guid><wfw:comment>http://m.shnenglu.com/jackyxinli/comments/209227.html</wfw:comment><comments>http://m.shnenglu.com/jackyxinli/archive/2014/12/18/209227.html#Feedback</comments><slash:comments>0</slash:comments><wfw:commentRss>http://m.shnenglu.com/jackyxinli/comments/commentRss/209227.html</wfw:commentRss><trackback:ping>http://m.shnenglu.com/jackyxinli/services/trackbacks/209227.html</trackback:ping><description><![CDATA[<div style="background-color:#eeeeee;font-size:13px;border:1px solid #CCCCCC;padding-right: 5px;padding-bottom: 4px;padding-left: 4px;padding-top: 4px;width: 98%;word-break:break-all"><!--<br /><br />Code highlighting produced by Actipro CodeHighlighter (freeware)<br />http://www.CodeHighlighter.com/<br /><br />--><span style="color: #000000; ">; You may customize </span><span style="color: #0000FF; ">this</span><span style="color: #000000; "> and other start</span><span style="color: #000000; ">-</span><span style="color: #000000; ">up templates; <br />; The location of </span><span style="color: #0000FF; ">this</span><span style="color: #000000; "> template </span><span style="color: #0000FF; ">is</span><span style="color: #000000; "> c:\emu8086\inc\0_com_template.txt<br /><br />    org 100h<br />    jmp start<br /><br />data:<br />    dw </span><span style="color: #000000; ">32</span><span style="color: #000000; "> dup(</span><span style="color: #000000; ">0</span><span style="color: #000000; ">)<br />        <br />stack:<br />    dw </span><span style="color: #000000; ">256</span><span style="color: #000000; "> dup(0</span><span style="color: #000000; ">)<br /><br />start:<br />; add your code here    <br />    mov ax, cs<br />    mov ds, ax<br />    mov bx, data<br />    <br />    mov ss, ax<br />    mov sp, stack</span><span style="color: #000000; ">+</span><span style="color: #000000; ">31</span><span style="color: #000000; "><br />    <br />    push </span><span style="color: #000000; ">0x0001</span><span style="color: #000000; "><br />    push </span><span style="color: #000000; ">0x0002</span><span style="color: #000000; "><br />    push </span><span style="color: #000000; ">0x0003</span><span style="color: #000000; "><br />    call test_proc<br />    <br />    hlt<br />    <br />test_proc:<br />    push bp<br />    mov bp, sp<br />    <br />    mov ax, [bp</span><span style="color: #000000; ">+</span><span style="color: #000000; ">8</span><span style="color: #000000; ">]<br />    push ax<br />    call write_char<br />    <br />    mov ax, [bp</span><span style="color: #000000; ">+</span><span style="color: #000000; ">6</span><span style="color: #000000; ">]<br />    push ax<br />    call write_char<br />    <br />    mov ax, [bp</span><span style="color: #000000; ">+</span><span style="color: #000000; ">4</span><span style="color: #000000; ">]<br />    push ax<br />    call write_char<br />    <br />    pop bp<br />    ret </span><span style="color: #000000; ">6</span><span style="color: #000000; "><br />    <br />write_char:<br />    push bp<br />    mov bp, sp<br />    <br />    mov ax, [bp</span><span style="color: #000000; ">+</span><span style="color: #000000; ">4</span><span style="color: #000000; ">]<br />    mov dl, al<br />    add dl, </span><span style="color: #000000; ">0x30</span><span style="color: #000000; "><br />    cmp dl, </span><span style="color: #000000; ">0x3a</span><span style="color: #000000; "><br />    jl printit<br />    add dl, </span><span style="color: #000000; ">0x07</span><span style="color: #000000; "><br />    <br />printit:<br />    mov ah, </span><span style="color: #000000; ">0x02</span><span style="color: #000000; "><br />    </span><span style="color: #0000FF; ">int</span><span style="color: #000000; "> </span><span style="color: #000000; ">0x21</span><span style="color: #000000; "><br />    pop bp<br />    ret </span><span style="color: #000000; ">2</span></div><img src ="http://m.shnenglu.com/jackyxinli/aggbug/209227.html" width = "1" height = "1" /><br><br><div align=right><a style="text-decoration:none;" href="http://m.shnenglu.com/jackyxinli/" target="_blank">jacky_zz</a> 2014-12-18 17:10 <a href="http://m.shnenglu.com/jackyxinli/archive/2014/12/18/209227.html#Feedback" target="_blank" style="text-decoration:none;">鍙戣〃璇勮</a></div>]]></description></item><item><title>[ASM] 浜岃繘鍒舵暟鐢ㄥ崄鍏繘鍒舵樉紺?/title><link>http://m.shnenglu.com/jackyxinli/archive/2014/12/18/209224.html</link><dc:creator>jacky_zz</dc:creator><author>jacky_zz</author><pubDate>Thu, 18 Dec 2014 08:24:00 GMT</pubDate><guid>http://m.shnenglu.com/jackyxinli/archive/2014/12/18/209224.html</guid><wfw:comment>http://m.shnenglu.com/jackyxinli/comments/209224.html</wfw:comment><comments>http://m.shnenglu.com/jackyxinli/archive/2014/12/18/209224.html#Feedback</comments><slash:comments>0</slash:comments><wfw:commentRss>http://m.shnenglu.com/jackyxinli/comments/commentRss/209224.html</wfw:commentRss><trackback:ping>http://m.shnenglu.com/jackyxinli/services/trackbacks/209224.html</trackback:ping><description><![CDATA[<div style="background-color:#eeeeee;font-size:13px;border:1px solid #CCCCCC;padding-right: 5px;padding-bottom: 4px;padding-left: 4px;padding-top: 4px;width: 98%;word-break:break-all"><!--<br /><br />Code highlighting produced by Actipro CodeHighlighter (freeware)<br />http://www.CodeHighlighter.com/<br /><br />--><span style="color: #000000; ">org 100h<br /><br />; add your code here<br />    mov ax, cs<br />    mov ds, ax<br />    mov ss, ax<br />    <br />    mov ax, </span><span style="color: #000000; ">0x0000</span><span style="color: #000000; "><br />    mov bx, </span><span style="color: #000000; ">0x106f</span><span style="color: #000000; "><br />    mov ch, </span><span style="color: #000000; ">0x04</span><span style="color: #000000; "><br />    <br />rotate:<br />    mov cl, </span><span style="color: #000000; ">0x04</span><span style="color: #000000; "><br />    rol bx, cl<br />    mov al, bl<br />    and al, </span><span style="color: #000000; ">0x0f</span><span style="color: #000000; "><br />    add al, </span><span style="color: #000000; ">0x30</span><span style="color: #000000; "><br />    cmp al, </span><span style="color: #000000; ">0x3a</span><span style="color: #000000; "><br />    jl printit<br />    add al, </span><span style="color: #000000; ">0x07</span><span style="color: #000000; "><br />    <br />printit:<br />    mov dl, al<br />    mov ah, </span><span style="color: #000000; ">0x02</span><span style="color: #000000; "><br />    </span><span style="color: #0000FF; ">int</span><span style="color: #000000; "> </span><span style="color: #000000; ">0x21</span><span style="color: #000000; "><br />    dec ch<br />    jnz rotate    <br /><br />ret</span></div><img src ="http://m.shnenglu.com/jackyxinli/aggbug/209224.html" width = "1" height = "1" /><br><br><div align=right><a style="text-decoration:none;" href="http://m.shnenglu.com/jackyxinli/" target="_blank">jacky_zz</a> 2014-12-18 16:24 <a href="http://m.shnenglu.com/jackyxinli/archive/2014/12/18/209224.html#Feedback" target="_blank" style="text-decoration:none;">鍙戣〃璇勮</a></div>]]></description></item><item><title>[ASM] 鏄劇ず涓涓暟瀛楃殑浜岃繘鍒躲佸叓榪涘埗銆佸崄榪涘埗銆佸崄鍏繘鍒訛紙甯﹁繃紼嬭皟鐢級http://m.shnenglu.com/jackyxinli/archive/2014/12/17/209208.htmljacky_zzjacky_zzWed, 17 Dec 2014 08:55:00 GMThttp://m.shnenglu.com/jackyxinli/archive/2014/12/17/209208.htmlhttp://m.shnenglu.com/jackyxinli/comments/209208.htmlhttp://m.shnenglu.com/jackyxinli/archive/2014/12/17/209208.html#Feedback0http://m.shnenglu.com/jackyxinli/comments/commentRss/209208.htmlhttp://m.shnenglu.com/jackyxinli/services/trackbacks/209208.html; You may customize this and other start-up templates; 
; The location of 
this template is c:\emu8086\inc\0_com_template.txt

org 100h

; add your code here 
    mov ax, cs
    mov ds, ax 
    mov ss, ax    
    mov sp, stack 
+ 256 - 1    
    mov si, 
0
    
    push 
0x105e
    call write_bin
    pop ax 
    
    call write_space2
    
    push 
0x0002
    push 
0x78fd
    call write_num
    pop ax
    pop ax
    
    call write_space2
    
    push 
0x0008
    push 
0x78fd
    call write_num
    pop ax
    pop ax
    
    call write_space2
    
    push 
0x000A
    push 
0x78fd
    call write_num
    pop ax
    pop ax
    
    call write_space2
    
    push 
0x0010
    push 
0x78fd
    call write_num
    pop ax
    pop ax
    
    ret

write_space2:
    mov cx, 
2
loop_write_char:
    call write_space
    loop loop_write_char
    ret

write_space:
    push 
0x0000
    call write_char
    pop ax
    ret
    
write_char:    
    push ax
    push bx
    push cx
    push dx
    mov bp, sp
    
    mov ah, 
0x0e
    mov bx, ss:[bp
+10] ; parameter 1
    mov al, bl
    mov bx, 
0x000c
    
int 0x10
    
    pop dx
    pop cx
    pop bx
    pop ax
    ret

write_bin:
    mov bp, sp       
    mov ax, ss:[bp
+2] ; parameter 1
    mov cx, 
16
    
s:
    xor dx, dx
    rcl ax, 
1
    adc dl, 
0x30
    
    push dx
    call write_char
    pop dx 
    loop s
    ret
    
write_num:
    mov bp, sp
    mov ax, ss:[bp
+2] ; parameter 1
    mov bx, ss:[bp
+4] ; parameter 2
    mov cx, 
0
    
loop_num_div:
    mov dx, 
0
    div bx
    push dx
    inc cx
    cmp ax, 
0
    jne loop_num_div
    
loop_num_disp:
    pop dx
    
    add dl, 
0x30
    cmp dl, 
0x3A
    jl disp_char
    add dl, 
0x07

disp_char:    
    push dx
    call write_char
    pop dx
    
    loop loop_num_disp
    ret 
    
stack:
    dw 
0000000000000000
    dw 
0000000000000000
    dw 
0000000000000000
    dw 
0000000000000000
    dw 
0000000000000000
    dw 
0000000000000000
    dw 
0000000000000000
    dw 
0000000000000000
end_flag: db 
0x11

jacky_zz 2014-12-17 16:55 鍙戣〃璇勮
]]>
[ASM] 鏄劇ず涓涓暟瀛楃殑鍗佽繘鍒?/title><link>http://m.shnenglu.com/jackyxinli/archive/2014/12/17/209201.html</link><dc:creator>jacky_zz</dc:creator><author>jacky_zz</author><pubDate>Wed, 17 Dec 2014 01:40:00 GMT</pubDate><guid>http://m.shnenglu.com/jackyxinli/archive/2014/12/17/209201.html</guid><wfw:comment>http://m.shnenglu.com/jackyxinli/comments/209201.html</wfw:comment><comments>http://m.shnenglu.com/jackyxinli/archive/2014/12/17/209201.html#Feedback</comments><slash:comments>0</slash:comments><wfw:commentRss>http://m.shnenglu.com/jackyxinli/comments/commentRss/209201.html</wfw:commentRss><trackback:ping>http://m.shnenglu.com/jackyxinli/services/trackbacks/209201.html</trackback:ping><description><![CDATA[<div style="background-color:#eeeeee;font-size:13px;border:1px solid #CCCCCC;padding-right: 5px;padding-bottom: 4px;padding-left: 4px;padding-top: 4px;width: 98%;word-break:break-all"><!--<br /><br />Code highlighting produced by Actipro CodeHighlighter (freeware)<br />http://www.CodeHighlighter.com/<br /><br />--><span style="color: #000000; ">org 100h<br /><br />; add your code here<br /><br />    mov ax, cs<br />    mov ds, ax<br />    <br />    mov ax, </span><span style="color: #000000; ">0xb800</span><span style="color: #000000; "><br />    mov es, ax<br />    <br />    xor ax, ax<br />    xor bx, bx<br />    xor cx, cx<br />    xor dx, dx<br />    <br />    mov ax, </span><span style="color: #000000; ">0x105e</span><span style="color: #000000; "> ;闄ゆ暟<br />    mov bx, </span><span style="color: #000000; ">10</span><span style="color: #000000; "> ;琚櫎鏁?br /><br />s:    <br />    mov dx, </span><span style="color: #000000; ">0</span><span style="color: #000000; "> ;娓呯┖浣欐暟<br />    div bx ;闄や互琚櫎鏁?br />    push dx ;鎶婁綑鏁板帇鏍?br />    inc cx ;寰幆嬈℃暟鍔?<br />    cmp ax, </span><span style="color: #000000; ">0</span><span style="color: #000000; "> ;鍟嗕笉涓?緇х畫闄?br />    jne s<br />    <br />    mov bx, </span><span style="color: #000000; ">0</span><span style="color: #000000; "><br />    <br />p1: <br />    pop dx<br />    add dl, </span><span style="color: #000000; ">0x30</span><span style="color: #000000; "><br />    <br />    mov es:[bx], dl<br />    inc bx<br />    mov es:[bx], </span><span style="color: #000000; ">0x0c</span><span style="color: #000000; "><br />    inc bx<br />    loop p1<br />    <br />ret</span></div><img src ="http://m.shnenglu.com/jackyxinli/aggbug/209201.html" width = "1" height = "1" /><br><br><div align=right><a style="text-decoration:none;" href="http://m.shnenglu.com/jackyxinli/" target="_blank">jacky_zz</a> 2014-12-17 09:40 <a href="http://m.shnenglu.com/jackyxinli/archive/2014/12/17/209201.html#Feedback" target="_blank" style="text-decoration:none;">鍙戣〃璇勮</a></div>]]></description></item><item><title>[ASM] 鏄劇ず涓涓暟瀛楃殑鍗佸叚榪涘埗http://m.shnenglu.com/jackyxinli/archive/2014/12/17/209200.htmljacky_zzjacky_zzWed, 17 Dec 2014 01:31:00 GMThttp://m.shnenglu.com/jackyxinli/archive/2014/12/17/209200.htmlhttp://m.shnenglu.com/jackyxinli/comments/209200.htmlhttp://m.shnenglu.com/jackyxinli/archive/2014/12/17/209200.html#Feedback0http://m.shnenglu.com/jackyxinli/comments/commentRss/209200.htmlhttp://m.shnenglu.com/jackyxinli/services/trackbacks/209200.htmlorg 100h

; add your code here

    mov ax, cs
    mov ds, ax
    
    mov ax, 
0xb800
    mov es, ax
    
    xor ax, ax
    xor bx, bx
    xor dx, dx
    
    mov dl, 
0x2f
    mov al, dl
    shr al, 
4
    add al, 
0x30
    cmp al, 
0x3a
    jl p1
    add al, 
0x07

p1:
    mov es:[bx], al
    inc bx
    mov es:[bx], 
0x0c
    inc bx
    
    mov al, dl
    and al, 
0x0f
    add al, 
0x30
    cmp al, 
0x3a
    jl p2
    add al, 
0x07
    
p2:
    mov es:[bx], al
    inc bx
    mov es:[bx], 
0x0c
    inc bx
    
ret


jacky_zz 2014-12-17 09:31 鍙戣〃璇勮
]]>
青青草原综合久久大伊人导航_色综合久久天天综合_日日噜噜夜夜狠狠久久丁香五月_热久久这里只有精品
  • <ins id="pjuwb"></ins>
    <blockquote id="pjuwb"><pre id="pjuwb"></pre></blockquote>
    <noscript id="pjuwb"></noscript>
          <sup id="pjuwb"><pre id="pjuwb"></pre></sup>
            <dd id="pjuwb"></dd>
            <abbr id="pjuwb"></abbr>
            一本一本久久a久久精品综合麻豆| 亚洲一区二区在线视频| 欧美另类视频| 欧美—级高清免费播放| 欧美另类高清视频在线| 欧美日韩1080p| 国产精品久久久久aaaa| 国产伦精品一区二区三区免费| 国产精品久久午夜| 一区二区三区中文在线观看 | 性色av一区二区三区| 午夜精品久久久久影视| 久久久久久综合| 欧美日韩一区二区三区在线| 国产伦精品一区二区三| 樱桃成人精品视频在线播放| 亚洲精品一级| 欧美在线观看网址综合| 亚洲电影免费观看高清完整版在线 | 久久精品日产第一区二区| 久久偷看各类wc女厕嘘嘘偷窃| 欧美成年人网| 国产亚洲综合精品| 夜夜嗨av一区二区三区中文字幕| 亚洲欧美中文日韩在线| 欧美成人免费网站| 亚洲欧美日韩一区二区在线| 久久综合久久综合久久综合| 欧美色网一区二区| 亚洲国产精品视频一区| 亚洲欧美色婷婷| 亚洲人成亚洲人成在线观看图片| 欧美亚洲午夜视频在线观看| 欧美伦理视频网站| 亚洲高清在线视频| 久久久www| 在线视频亚洲欧美| 欧美精品久久久久久久久久| 亚洲欧洲美洲综合色网| 欧美一区二区私人影院日本| 欧美日本在线播放| 在线免费观看视频一区| 欧美一区观看| 99热免费精品| 欧美乱妇高清无乱码| 在线色欧美三级视频| 久久av一区二区三区| 99在线精品视频| 欧美精品福利在线| 亚洲欧洲日本在线| 免费中文日韩| 久久久青草婷婷精品综合日韩| 国产乱码精品一区二区三区忘忧草| 一区二区免费在线观看| 亚洲国产你懂的| 欧美肥婆在线| 亚洲精品一区二区三区蜜桃久| 免费成人激情视频| 美玉足脚交一区二区三区图片| 一区二区三区自拍| 欧美高清视频在线| 欧美国产一区视频在线观看| 亚洲麻豆av| 亚洲美女av网站| 欧美偷拍另类| 欧美在线3区| 欧美一区观看| 伊人久久大香线蕉av超碰演员| 久久一区欧美| 欧美va天堂| 亚洲天堂黄色| 午夜精彩视频在线观看不卡| 国产一区二区成人| 欧美freesex交免费视频| 你懂的亚洲视频| 99精品国产在热久久下载| 一本色道久久88综合日韩精品| 国产精品chinese| 久久久精品免费视频| 久久久综合激的五月天| 亚洲乱码视频| 午夜精品999| 亚洲激情六月丁香| 一区二区三区日韩欧美| 国产精品一区一区| 久久中文字幕一区| 欧美日韩国产探花| 久久久亚洲高清| 欧美精品在线一区| 久久精品女人的天堂av| 欧美va天堂| 久久精品国产视频| 欧美精品在欧美一区二区少妇| 欧美一区二区三区四区在线 | 欧美三日本三级三级在线播放| 午夜精品理论片| 亚洲激情社区| 国产区精品在线观看| 欧美成人精品福利| 欧美亚州韩日在线看免费版国语版| 欧美在线观看视频一区二区| 欧美777四色影视在线| 性欧美xxxx视频在线观看| 蜜桃精品久久久久久久免费影院| 亚洲综合视频网| 美女黄网久久| 久久久久久久久久看片| 欧美日韩一区二区视频在线观看 | 亚洲男人第一av网站| 亚洲欧洲日本mm| 久久精品国产v日韩v亚洲| 一区二区电影免费在线观看| 久久经典综合| 欧美亚洲在线| 欧美性久久久| 亚洲国产一成人久久精品| 国产偷久久久精品专区| 99在线|亚洲一区二区| 91久久国产综合久久91精品网站 | 欧美日韩理论| 亚洲大片在线| 亚洲激情电影在线| 久久亚洲捆绑美女| 久久久久九九视频| 国产欧美日韩综合一区在线观看| 亚洲精品视频免费| 亚洲精品日韩久久| 蜜臀av性久久久久蜜臀aⅴ四虎| 久久九九久精品国产免费直播| 国产精品自在线| 亚洲自啪免费| 欧美在线观看日本一区| 国产精品二区影院| 一区二区精品在线观看| 亚洲午夜极品| 欧美色视频日本高清在线观看| 亚洲人永久免费| 99pao成人国产永久免费视频| 欧美顶级少妇做爰| 91久久夜色精品国产九色| 亚洲人成网站影音先锋播放| 欧美不卡视频| 亚洲美女少妇无套啪啪呻吟| 一本色道久久88亚洲综合88| 欧美精品自拍| 亚洲午夜高清视频| 久久精品99国产精品| 韩国一区二区在线观看| 久久美女性网| 亚洲区中文字幕| 亚洲午夜久久久久久久久电影院| 欧美日韩性生活视频| 亚洲小说春色综合另类电影| 欧美一区二区黄| 韩国一区二区三区美女美女秀| 久久亚洲综合网| 亚洲精品一区二区三区不| 亚洲女优在线| 曰本成人黄色| 欧美色另类天堂2015| 欧美一区二区三区日韩视频| 亚洲精品欧美精品| 欧美亚洲成人免费| 久久成人免费网| 亚洲精品在线免费观看视频| 亚洲综合日本| 亚洲国产精品999| 欧美日韩一区在线观看视频| 欧美亚洲三区| 亚洲人体1000| 久久久久久久高潮| 日韩写真在线| 国产日产欧产精品推荐色 | 欧美成人免费在线| 亚洲新中文字幕| 女人香蕉久久**毛片精品| 这里只有精品丝袜| 一区二区在线免费观看| 欧美精品色一区二区三区| 午夜精品久久久99热福利| 亚洲东热激情| 久久精品一区中文字幕| 一区二区三区产品免费精品久久75| 国产性色一区二区| 欧美日本一道本在线视频| 欧美伊久线香蕉线新在线| 亚洲日韩欧美视频一区| 久久久免费观看视频| 亚洲欧美电影院| 亚洲美女免费视频| 精品成人免费| 国产亚洲欧美激情| 欧美性色综合| 欧美欧美天天天天操| 久久久久一本一区二区青青蜜月| 亚洲永久网站| 中文网丁香综合网| 亚洲美女视频| 亚洲美女啪啪| 亚洲精品一区二区三区在线观看|