﻿<?xml version="1.0" encoding="utf-8" standalone="yes"?><rss version="2.0" xmlns:dc="http://purl.org/dc/elements/1.1/" xmlns:trackback="http://madskills.com/public/xml/rss/module/trackback/" xmlns:wfw="http://wellformedweb.org/CommentAPI/" xmlns:slash="http://purl.org/rss/1.0/modules/slash/"><channel><title>BlogJava-java之路-文章分类-旧网络文章(200903之前发表于csdn中) </title><link>http://www.blogjava.net/ap0406708/category/41759.html</link><description>问鼎java之颠</description><language>zh-cn</language><lastBuildDate>Sun, 20 Sep 2009 02:29:26 GMT</lastBuildDate><pubDate>Sun, 20 Sep 2009 02:29:26 GMT</pubDate><ttl>60</ttl><item><title>删除 grub (装linux可能会有的引导入系统的东东) </title><link>http://www.blogjava.net/ap0406708/articles/295707.html</link><dc:creator>肇哥</dc:creator><author>肇哥</author><pubDate>Sat, 19 Sep 2009 17:19:00 GMT</pubDate><guid>http://www.blogjava.net/ap0406708/articles/295707.html</guid><wfw:comment>http://www.blogjava.net/ap0406708/comments/295707.html</wfw:comment><comments>http://www.blogjava.net/ap0406708/articles/295707.html#Feedback</comments><slash:comments>0</slash:comments><wfw:commentRss>http://www.blogjava.net/ap0406708/comments/commentRss/295707.html</wfw:commentRss><trackback:ping>http://www.blogjava.net/ap0406708/services/trackbacks/295707.html</trackback:ping><description><![CDATA[<p>发表于2008年08月10日 12:32 <span class="splr">阅读(<span class="hit" id="viewCntSpan"><span style="color: #e07819; font-family: Tahoma">13</span></span>)</span> 评论(<span class="hit" id="replyCntSpan"><span style="color: #e07819; font-family: Tahoma">0</span></span>) </p>
<p>装左一日ubuntu<br />
<br />
删除 grub<br />
dos下&nbsp;&nbsp;fdisk /mbr<br />
</p>
<p>linux 分区的大小</p>
<p><br />
swap&nbsp;&nbsp;1024 mb<br />
/<br />
/home&nbsp;&nbsp; 1024 mb&nbsp;&nbsp; ext3<br />
/boot&nbsp;&nbsp;&nbsp;&nbsp;300 mb</p>
<img src ="http://www.blogjava.net/ap0406708/aggbug/295707.html" width = "1" height = "1" /><br><br><div align=right><a style="text-decoration:none;" href="http://www.blogjava.net/ap0406708/" target="_blank">肇哥</a> 2009-09-20 01:19 <a href="http://www.blogjava.net/ap0406708/articles/295707.html#Feedback" target="_blank" style="text-decoration:none;">发表评论</a></div>]]></description></item><item><title>一点设计思想----状态机 </title><link>http://www.blogjava.net/ap0406708/articles/295706.html</link><dc:creator>肇哥</dc:creator><author>肇哥</author><pubDate>Sat, 19 Sep 2009 17:17:00 GMT</pubDate><guid>http://www.blogjava.net/ap0406708/articles/295706.html</guid><wfw:comment>http://www.blogjava.net/ap0406708/comments/295706.html</wfw:comment><comments>http://www.blogjava.net/ap0406708/articles/295706.html#Feedback</comments><slash:comments>0</slash:comments><wfw:commentRss>http://www.blogjava.net/ap0406708/comments/commentRss/295706.html</wfw:commentRss><trackback:ping>http://www.blogjava.net/ap0406708/services/trackbacks/295706.html</trackback:ping><description><![CDATA[<p>发表于2008年08月02日 00:21 </p>
<p>如果计算器程序是一个命令行程序，那么完全可以要求用户先输入第一个操作楼，后输入一个运算符，在输入第二个操作数，随后程序就可以给出结果了。 </p>
<p>然而对于一个Windows应用程序，用户是一个键一个键地输入数据，程序在接到一个键输入以后，根据这个键是什么来决定自己的下一动作。这样，程序的行为就可以用一个&#8220;状态机&#8221;来表达。 </p>
<p>状态机是计算机中常用到的分析工具，它可以表达成一个程序在运行时，如何根据输入来在不同的状态之间转换。&nbsp;<br />
&nbsp;<img height="375" alt="" src="http://b7.photo.store.qq.com/http_imgload.cgi?/rurl4_b=9e1ac40b169ec71ac11707dfa499060149bb1ab160ccb0b16f45c041e12d9972881e4925e6dad28a12d12508344dab78ac3f476c24fe2e3a315b9f43a820a252d520a1b144d7c872ec9280be7d5b92887784e003" width="500" border="0" /></p>
<p><br />
状态转换 <br />
操作数一初始为0,如果开始输入的第一个操作数的第一个键是操作符,之后就会接受第二个操作数。 </p>
<p>&nbsp;</p>
<p><img height="375" alt="" src="http://b8.photo.store.qq.com/http_imgload.cgi?/rurl4_b=9e1ac40b169ec71ac11707dfa4990601b68bb733f93731956a70773ce466e70db0410e4f75e0130056fbd6ae17e94e593261a3ab5be1dacc099dc41ebb9a8fca440b708da819c6c8796d1513ececa3c5f7681ff6" width="500" border="0" /><br />
接受第一个操作数子状态 </p>
<p>&nbsp;<img height="375" alt="" src="http://b9.photo.store.qq.com/http_imgload.cgi?/rurl4_b=9e1ac40b169ec71ac11707dfa49906015959cb9699185142c24b2b379f5e81f305061435bb2bf295d2b3513af27ac8e64532d8138e481418b111662d410f3d478ebeb0e0064efdc3ab85e4757a260f6965c7baa7" width="500" border="0" /></p>
<p><br />
接受第二个操作数子状态 </p>
<p>在程序实现中，使用一个boolean变量 bNumBegins来判断是否处在接受第一个数字的状态。 </p>
<p>If(bNumBegins) <br />
{ <br />
iCurrent = I; <br />
bNumBegins = false; <br />
} <br />
Else <br />
{ <br />
//要求检查运算溢出的情况 <br />
Checkd{ <br />
iCurrent = (iCurrent * 10 ) +I; <br />
} <br />
} </p>
<p>而判断在接受第一个还是第二个操作数状态的方法，则是看前一个运算符 -----如果前一个运算符是 = ，则现在接受的是第一个操作数，否则是第二个操作数。 </p>
<p>计算的方法： <br />
Switch(jOperator) <br />
{ <br />
Case &#8216;+&#8217; : <br />
Checked{ iResult = iNum1 + iCurrent;} <br />
Break; <br />
Case &#8216;-&#8217; : <br />
Checked{ iResult = iNum1 - iCurrent;} <br />
Break; <br />
Case &#8216;*&#8217; : <br />
Checked{ iResult = iNum1 * iCurrent;} <br />
Break; <br />
Case &#8216;/&#8217; : <br />
Checked{ iResult = iNum1 / iCurrent;} <br />
Break; <br />
Default:&nbsp; // &#8216;=&#8217; <br />
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; iResult = iCurrent; <br />
break; <br />
} </p>
<p>/////////////////////////////////////////////////////////////////////////</p>
<p>以上是见到本子个记下的一些看书的笔记，程序是一些片断但尽显了整个设计。<br />
以下则是自己想的，自己想出的程序和人家的还是有一段距离。</p>
<p>1.&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; 先判断是数字还是操作符，再判断所处状态，再跟据不同的状态有不同的操作.</p>
<p>Int Num1 = 0;<br />
Int Num2 = 0;<br />
Int ResultNum = 0;<br />
Int CurrentNum = 0;<br />
Boolean IsNum1 = true;<br />
Boolean NumBegin = true;</p>
<p>Switch (key)&nbsp;&nbsp; //输入字符<br />
{<br />
Case 数字:<br />
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; If(IsNum1)<br />
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; {<br />
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; If(NumBegin)<br />
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; {<br />
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; Num1 = key;<br />
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; CurrentNum = Num;<br />
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; NumBegin = false;<br />
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; Println(CurrentNum);&nbsp;&nbsp; //打印<br />
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; }<br />
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; Else<br />
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; {<br />
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; Num1 = Num1+10 + key;<br />
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; CurrentNum = Num1;<br />
Println(CurrentNum);&nbsp;&nbsp; //打印<br />
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; }<br />
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; }<br />
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; Else<br />
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; {<br />
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; If(NumBegin)<br />
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; {<br />
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; Num2 = key;<br />
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; CurrentNum = Num;<br />
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; NumBegin = false;<br />
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; Println(CurrentNum);&nbsp;&nbsp; //打印<br />
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; }<br />
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; Else<br />
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; {<br />
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; Num2 = Num1+10 + key;<br />
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; CurrentNum = Num2;<br />
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; Println(CurrentNum);&nbsp;&nbsp; //打印<br />
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; }<br />
}</p>
<p>Case (运算符) <br />
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; +:<br />
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; If(IsNum1)<br />
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; {<br />
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; IsNum1 = false;&nbsp;&nbsp;&nbsp; //变状态<br />
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; Println(CurrentNum);&nbsp;&nbsp; //打印<br />
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; }<br />
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; Else<br />
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; {<br />
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; ResultNum = Num1 + Num 2;<br />
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; CurrentNum = ResultNum;<br />
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; IsNum1 = false;&nbsp;&nbsp;&nbsp; //变状态<br />
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; Println(CurrentNum);&nbsp;&nbsp; //打印<br />
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; }<br />
-&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; , *&nbsp; , / ,&nbsp; &#8230;&#8230;<br />
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; = &#8220;<br />
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; If(IsNum1)<br />
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; {<br />
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; IsNum1 = false;&nbsp;&nbsp;&nbsp; //变状态<br />
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; Println(CurrentNum);&nbsp;&nbsp; //打印<br />
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; //这里不太清楚具体要怎么样，就自己定这样<br />
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; }<br />
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; Else<br />
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; {<br />
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; ResultNum = Num1 + Num 2;<br />
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; CurrentNum = ResultNum;<br />
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; IsNum1 = false;&nbsp;&nbsp;&nbsp; //变状态<br />
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; Println(CurrentNum);&nbsp;&nbsp; //打印</p>
<p>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; }</p>
<p>}</p>
<p>2.&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; 先判断状态，再判断输入是数字还是操作符<br />
代码应该同上面差不多;</p>
<p>3.&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; 设定具体状态的值，之后在一个方法中跟据不同的参数值做不同的事</p>
<p>如：接受第一操作数__接受第一个数字&nbsp; = 1<br />
接受第一操作数__接受其余的数字&nbsp; = 2<br />
接受第二操作数__接受第一个数字&nbsp; = 3<br />
接受第二操作数__接受第二个数字&nbsp; = 4</p>
<p>&nbsp;</p>
<p>本文来自CSDN博客，转载请标明出处：http://blog.csdn.net/ap0406708/archive/2009/03/19/4004322.aspx</p>
<img src ="http://www.blogjava.net/ap0406708/aggbug/295706.html" width = "1" height = "1" /><br><br><div align=right><a style="text-decoration:none;" href="http://www.blogjava.net/ap0406708/" target="_blank">肇哥</a> 2009-09-20 01:17 <a href="http://www.blogjava.net/ap0406708/articles/295706.html#Feedback" target="_blank" style="text-decoration:none;">发表评论</a></div>]]></description></item><item><title>Socket</title><link>http://www.blogjava.net/ap0406708/articles/295705.html</link><dc:creator>肇哥</dc:creator><author>肇哥</author><pubDate>Sat, 19 Sep 2009 17:12:00 GMT</pubDate><guid>http://www.blogjava.net/ap0406708/articles/295705.html</guid><wfw:comment>http://www.blogjava.net/ap0406708/comments/295705.html</wfw:comment><comments>http://www.blogjava.net/ap0406708/articles/295705.html#Feedback</comments><slash:comments>0</slash:comments><wfw:commentRss>http://www.blogjava.net/ap0406708/comments/commentRss/295705.html</wfw:commentRss><trackback:ping>http://www.blogjava.net/ap0406708/services/trackbacks/295705.html</trackback:ping><description><![CDATA[<p>发表于2008年08月02日 00:28 阅读(8) 评论(0) </p>
<p>在Unix操作系统中，几乎任何东西(磁盘，用户终端，网络连接)都可以用一个文件描述符来表示，这种统一性使得Unix程序员可以写出设备无关的应用程序。</p>
<p>Socket也是一个文件描述符，只不过这个文件描述符表示的是网络，应用程序对于这个描述符的读写就是对网络数据的读写。</p>
<p>在建立一个Socket的时候，可以把它绑定到一个网络地址上的一个端口，一旦绑定成功，应用程序就可以用这个Socket来传送和接收数据了。</p>
<p>&nbsp;</p>
<p>&nbsp;<img height="375" alt="" src="http://b8.photo.store.qq.com/http_imgload.cgi?/rurl4_b=9e1ac40b169ec71ac11707dfa4990601777ec9cf1c9ffd53b7cc250b56b7dfbbe69bdd1ae9afb7baebcb2acde6a6700a4391546a7933e76f4def8eb903d7dc168591a56e5e7b921d8a11521ed7d3a06643ea1195" width="500" border="0" /></p>
<p>应用程序可以选择用TCP还是UDP连接，TCP可靠建立连接，UDP不可靠不建连接。</p>
<p>2.1 面向连接的套接字的系统调用时序图</p>
<p><img height="375" alt="" src="http://b9.photo.store.qq.com/http_imgload.cgi?/rurl4_b=9e1ac40b169ec71ac11707dfa4990601283ae25ce4ebdaf96764dc8d7849c821ede657408c80416de14bfb046501d8a482a8b6d13aaaafd3c6f6c9df8bfa45507197e3e1506bf46465db6b81cdc6b26e4ae5e526" width="500" border="0" /><br />
2.2 无连接协议的套接字调用时序图</p>
<p><img height="375" alt="" src="http://b9.photo.store.qq.com/http_imgload.cgi?/rurl4_b=9e1ac40b169ec71ac11707dfa4990601426c43bcc245f62a796e509c085ae48ad05af17b817b4bae33696c79ede061fe0daf281711cc9988dd2c452115770f4d1c016a0f4f4e4da3e4d59fe3cb4277cef68aae6b" width="500" border="0" /><br />
2.3 面向连接的应用程序流程图</p>
<p>&nbsp;<img height="349" alt="" src="http://b8.photo.store.qq.com/http_imgload.cgi?/rurl4_b=9e1ac40b169ec71ac11707dfa4990601a0d46caf0298a3892a97c89f8ff24553220d1528975bffcd2d7b903dd3b26d865799cc9e48419b1785970ffbe3fa1a440f8f8399214ba3d8eedf972c6d3176a9e85df66d" width="423" border="0" /></p>
<p>//图片来自:http://www.vckbase.com/document/viewdoc/?id=484 </p>
<p>&nbsp;</p>
<img src ="http://www.blogjava.net/ap0406708/aggbug/295705.html" width = "1" height = "1" /><br><br><div align=right><a style="text-decoration:none;" href="http://www.blogjava.net/ap0406708/" target="_blank">肇哥</a> 2009-09-20 01:12 <a href="http://www.blogjava.net/ap0406708/articles/295705.html#Feedback" target="_blank" style="text-decoration:none;">发表评论</a></div>]]></description></item><item><title>TCP/IP的一点点了解---读《TCP/IP宝典》 毕业设计</title><link>http://www.blogjava.net/ap0406708/articles/295704.html</link><dc:creator>肇哥</dc:creator><author>肇哥</author><pubDate>Sat, 19 Sep 2009 17:07:00 GMT</pubDate><guid>http://www.blogjava.net/ap0406708/articles/295704.html</guid><wfw:comment>http://www.blogjava.net/ap0406708/comments/295704.html</wfw:comment><comments>http://www.blogjava.net/ap0406708/articles/295704.html#Feedback</comments><slash:comments>0</slash:comments><wfw:commentRss>http://www.blogjava.net/ap0406708/comments/commentRss/295704.html</wfw:commentRss><trackback:ping>http://www.blogjava.net/ap0406708/services/trackbacks/295704.html</trackback:ping><description><![CDATA[<p>发表于2008年02月13日 09:14 阅读(13) 评论(0) </p>
<p>&nbsp;&nbsp; 2008.02.13<br />
1.子网掩码<br />
子网掩码的作用是确定目的地址主机是否与当前主机处于同一网络，即确这目的主机是本地的还是远程的。<br />
P77 讲道：&#8220;CIDR不是将子网掩码分为8位组，而将其按照位数分成32个部分。这样可以更好规划网络的规模，减少IP地址的浪费，想像一个B类网络中有2000台主机，根据B类网络的特点这将浪费6万个IP地址。&#8221;<br />
问题：点解话浪费？<br />
2046 = 2的12次方，只要12位主机ID，其余网络ID<br />
CIDR不用8,8分，固然可以有12位主机ID，而要8,8分就要用到16位主机ＩＤ，固然浪费6万个ＩＰ<br />
但8,8分也可以引入子网ＩＤ，就8位子网ＩＤ，８主机ＩＤ，用８时个子网。<br />
我都唔知点讲好，太多概念了吧。实践下就好，不过网络的野点稳个环境呢～～～<br />
2.可以使用１台服务器充当软件路由器，要设置允许ＩＰ转发，但肯定无专业的硬件路由器性能比～～～<br />
3.ＩＰ协议知道如何找到两个本地子网<br />
4.网络通信分单播，广播，组播<br />
　组播涉及ＩＧＭＰ（组管理协议）<br />
　P88　写道：&#8220;ＩＧＭＰ主机成员查询报文的生存期为1,以确保该信息不会转发至其他网络。&#8221;<br />
　问题：每到路由器，生存期就减１，０了就丢弃。<br />
　唔明距所谓的其出网络点定义，本地？如一个网络下有４个子网，子网１与子网2算唔算本地？<br />
　子网间的连接是交换机，路由器有什么区别？<br />
　p88还写到：&#8220;组播可能要经过不同的网关&#8221;<br />
　问题：网关不就是一个路由器地址吗？生存期到0时路由器怎么还会转发？<br />
5.ＩＰ协议==&gt;确定网络<br />
　ＡＲＰ协议==&gt;确定物理地址，网络中拉置<br />
　ＡＲＰ协议　广播 包&#8220;who has"　<br />
　有就回应　&#8220;ＩＰ　is MAC&#8221;<br />
6.默认网关<br />
　在路由表中找不到就发给它<br />
　路由表中0.0.0.0　的项就系默认网关<br />
　如果无，在路由表中找不到就会丢弃<br />
7.运输层以下的internet层是不可靠的<br />
　所以要有措施去保证<br />
　如TCP　有序列号，确定号，窗口（流控）<br />
8.tcp<br />
1.建立连接<br />
三次握手<br />
&nbsp; 1.SYN报文段<br />
&nbsp; 2.SYNACK报文段<br />
&nbsp; 3.SYN = 0<br />
2.传送数据<br />
&nbsp;&nbsp;&nbsp; 传输控制协议<br />
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; 内容有序列号，窗口之类<br />
9.？？？　无故ARP 代理ARP 反向ARP<br />
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; RPC远程过程调用<br />
多路复用／分解<br />
唔清楚的概念还不少<br />
10.NAT 私有地址　转　公有地址<br />
从而可以连接外网（Internet)<br />
并对外隐藏了私有网络<br />
11.设备　初理解<br />
集线器&nbsp;&nbsp;&nbsp; =====一条总线<br />
网桥　 把两个或多个网段连起来<br />
交换机 连接系统，全双工<br />
路由器 可连接两个ＬＡＮ网络环境<br />
12. ipconfig /release<br />
&nbsp;&nbsp;&nbsp; ipconfig /renew<br />
&nbsp;&nbsp; 重新获到配置<br />
13.&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; 网段vs子网　IP转发 </p>
<p>&nbsp;</p>
<img src ="http://www.blogjava.net/ap0406708/aggbug/295704.html" width = "1" height = "1" /><br><br><div align=right><a style="text-decoration:none;" href="http://www.blogjava.net/ap0406708/" target="_blank">肇哥</a> 2009-09-20 01:07 <a href="http://www.blogjava.net/ap0406708/articles/295704.html#Feedback" target="_blank" style="text-decoration:none;">发表评论</a></div>]]></description></item></channel></rss>