บทความนี้หรือส่วนนี้ของบทความต้องการปรับรูปแบบ ซึ่งอาจหมายถึง ต้องการจัดรูปแบบข้อความ จัดหน้า แบ่งหัวข้อ และ/หรือการจัดระเบียบอื่น ๆ คุณสามารถช่วยแก้ไขปัญหานี้ได้โดยการกดที่ปุ่ม แก้ไข ด้านบน จากนั้นปรับปรุงหรือจัดรูปแบบอื่น ๆ ในบทความให้เหมาะสม |
แผนภาพแสดงสถานะ หรือ สเตตไดอะแกรม (state diagram) ใช้เพื่อแสดงสถานะของวัตถุ รวมไปถึงเหตุการณ์ต่าง ๆ ที่สามารถทำให้สถานะของวัตถุนั้นเปลี่ยนแปลงไปและการกระทำที่เกิดขึ้นเมื่อสถานะของระบบเปลี่ยนไป สามารถบอกสถานะของวัตถุได้ โดยใช้หลักการให้ความสนใจ ณ เวลาต่าง ๆ กันนั้น วัตถุจะมีสถานะเป็นแบบใดบ้าง
การเขียน State Diagram เพื่อการทำ นั้นจะแทนด้วยสัญลักษณ์ สี่เหลี่ยมมุมมน ซึ่งแทน State โดยมีชื่อของ State ระบุอยู่ และจะใช้เครื่องหมายลูกศรเพื่อแทน Transition โดยลากจาก State เริ่มต้นไปยัง State ที่ต้องการ โดยบนลูกศรจะมีชื่อของ Transition หรือกิจกรรมกำกับอยู่ด้วย การเขียนชื่อของกิจกรรมกำกับบนลูกศร มีรูปแบบดังนี้
โดยที่
- Condition หมายถึง เงื่อนไขในการเข้าหรือออกจาก State
- Action หมายถึง กิจกรรมที่ทำระหว่างการเปลี่ยน State
- ทั้งนี้ในลูกศรจะมี Condition หรือ Action หรือไม่มีก็ได้ แต่ต้องมีตัวใดตัวหนึ่งเป็นอย่างน้อย
- จุดเริ่มต้นของกิจกรรมต่าง ๆ ใน State diagram เรียกว่า Initial state
- จุดสิ้นสุดของกิจกรรมทั้งหมดใน State diagram เรียกว่า End State
หลักในการเขียน State Diagram ให้มีประสิทธิภาพ
- จาก ดูว่ามีจำนวนของ State Diagram กี่ตัวที่ต้องเขียน ปกติจะเท่ากับจำนวน Function ของแต่ละ Class รวมกัน
- ไม่จำเป็นที่จะต้องเขียน State Diagram ของทุก ๆ Function ของทุก ๆ Class Diagram ก็ได้
- ในบาง Function ที่กิจกรรมไม่ซับซ้อนมากมาย ไม่จำเป็นต้องมี State Diagram
- ให้พิจารณาว่าในแต่ละ Class จะมี State อะไรบ้าง (โดยยึดจากหลักการของความเป็นจริง) ไม่ต้องคำนึงว่ามี Function อะไรอยู่
- จาก State ที่มีอยู่ให้เขียน State Diagram ของแต่ละ Function
- เพิ่ม state ที่จำเป็นเพิ่มเติม เพื่อให้ state diagram สมบูรณ์ยิ่งขึ้น
- ทำจนกว่าจะได้ State Diagram ของ 1 Class ที่สมบูรณ์
- ทำซ้ำจนครบทุก ๆ Class ใน Class Diagram
Moore Model
การเขียน State Diagram ของ Moore จะใช้ตัวอักษรและตัวเลขเขียนอยู่ในวงกลม โดยที่ตัวอักษรแสดงถึง State ตัวเลขแสดงถึง Output เช่น W/0 หมายความว่า ที่ State W ที่เวลาใดๆ ถ้าได้รับ Input แล้ววงจรจะเชื่อมด้วยเส้นตรงหรือเส้นโค้งมีหัวลูกศรกำกับและแต่ละเส้นที่เชื่อมกันก็ยังมีตัวเลขอีกชุด แสดงถึงการป้อน Input กำกับไว้ด้วย
Moore Model ใช้ในกรณีที่ Output ของวงจรไม่ได้ขึ้นอยู่กับ Input แต่จะขึ้นอยู่กับ Present State เท่านั้น ดังนั้น State table และ State Diagram ตามแบบของ Moore จะแตกต่างกับแบบของ Mealy
จากรูปคือ
ถ้าให้ State W เป็น Present State และวงจรได้รับ Input X=0 แล้ว Next State ของวงจรเป็น State Y และให้ Output Z=0 แต่ถ้าวงจรได้รับ Input X=1แล้ว Next State ของวงจรเป็น State X และให้ Output Z=0
ถ้าให้ State X เป็น Present State และวงจรได้รับ Input X=0 แล้ว Next State ของวงจรจะคงอยู่ที่ State X และให้ Output Z=1 แต่ถ้าวงจรได้รับ Input X=1แล้ว Next State ของวงจรเป็น State Yและให้ Output Z=1
ถ้าให้ State Y เป็น Present State และวงจรได้รับ Input X=0 แล้ว Next State ของวงจรเป็น State X และให้ Output Z=0 แต่ถ้าวงจรได้รับ Input X=1แล้ว Next State ของวงจรเป็น State W และให้ Output Z=0
ข้อดี
Output ไม่เปลี่ยนตาม Input ทำให้ไม่เกิดปัญหา momntary change หรือ Glitch
ข้อเสีย ใช้จำนวนสภาวะมากกว่าในการออกแบบวงจรชนิดเดียวกัน
อ้างอิง
- State diagram 2011-11-05 ที่ เวย์แบ็กแมชชีน
wikipedia, แบบไทย, วิกิพีเดีย, วิกิ หนังสือ, หนังสือ, ห้องสมุด, บทความ, อ่าน, ดาวน์โหลด, ฟรี, ดาวน์โหลดฟรี, mp3, วิดีโอ, mp4, 3gp, jpg, jpeg, gif, png, รูปภาพ, เพลง, เพลง, หนัง, หนังสือ, เกม, เกม, มือถือ, โทรศัพท์, Android, iOS, Apple, โทรศัพท์โมบิล, Samsung, iPhone, Xiomi, Xiaomi, Redmi, Honor, Oppo, Nokia, Sonya, MI, PC, พีซี, web, เว็บ, คอมพิวเตอร์
bthkhwamnihruxswnnikhxngbthkhwamtxngkarprbrupaebb sungxachmaythung txngkarcdrupaebbkhxkhwam cdhna aebnghwkhx cdlingkphayin aela hruxkarcdraebiybxun khunsamarthchwyaekikhpyhaniidodykarkdthipum aekikh danbn caknnprbprunghruxcdrupaebbxun inbthkhwamihehmaasm aephnphaphaesdngsthana hrux settidxaaekrm state diagram ichephuxaesdngsthanakhxngwtthu rwmipthungehtukarntang thisamarththaihsthanakhxngwtthunnepliynaeplngipaelakarkrathathiekidkhunemuxsthanakhxngrabbepliynip samarthbxksthanakhxngwtthuid odyichhlkkarihkhwamsnic n ewlatang knnn wtthucamisthanaepnaebbidbangtwxyangaephnphaphaesdngsthana karekhiyn State Diagram ephuxkartha nncaaethndwysylksn siehliymmummn sungaethn State odymichuxkhxng State rabuxyu aelacaichekhruxnghmayluksrephuxaethn Transition odylakcak State erimtnipyng State thitxngkar odybnluksrcamichuxkhxng Transition hruxkickrrmkakbxyudwy karekhiynchuxkhxngkickrrmkakbbnluksr mirupaebbdngni Condition Action odythi Condition hmaythung enguxnikhinkarekhahruxxxkcak State Action hmaythung kickrrmthitharahwangkarepliyn State thngniinluksrcami Condition hrux Action hruximmikid aettxngmitwidtwhnungepnxyangnxy cuderimtnkhxngkickrrmtang in State diagram eriykwa Initial state cudsinsudkhxngkickrrmthnghmdin State diagram eriykwa End Statehlkinkarekhiyn State Diagram ihmiprasiththiphaphcak duwamicanwnkhxng State Diagram kitwthitxngekhiyn pkticaethakbcanwn Function khxngaetla Class rwmkn imcaepnthicatxngekhiyn State Diagram khxngthuk Function khxngthuk Class Diagram kid inbang Function thikickrrmimsbsxnmakmay imcaepntxngmi State Diagram ihphicarnawainaetla Class cami State xairbang odyyudcakhlkkarkhxngkhwamepncring imtxngkhanungwami Function xairxyu cak State thimixyuihekhiyn State Diagram khxngaetla Function ephim state thicaepnephimetim ephuxih state diagram smburnyingkhun thacnkwacaid State Diagram khxng 1 Class thismburn thasacnkhrbthuk Class in Class DiagramMoore Modelkarekhiyn State Diagram khxng Moore caichtwxksraelatwelkhekhiynxyuinwngklm odythitwxksraesdngthung State twelkhaesdngthung Output echn W 0 hmaykhwamwa thi State W thiewlaid thaidrb Input aelwwngcrcaechuxmdwyesntrnghruxesnokhngmihwluksrkakbaelaaetlaesnthiechuxmknkyngmitwelkhxikchud aesdngthungkarpxn Input kakbiwdwy Moore Model ichinkrnithi Output khxngwngcrimidkhunxyukb Input aetcakhunxyukb Present State ethann dngnn State table aela State Diagram tamaebbkhxng Moore caaetktangkbaebbkhxng Mealy cakrupkhux thaih State W epn Present State aelawngcridrb Input X 0 aelw Next State khxngwngcrepn State Y aelaih Output Z 0 aetthawngcridrb Input X 1aelw Next State khxngwngcrepn State X aelaih Output Z 0 thaih State X epn Present State aelawngcridrb Input X 0 aelw Next State khxngwngcrcakhngxyuthi State X aelaih Output Z 1 aetthawngcridrb Input X 1aelw Next State khxngwngcrepn State Yaelaih Output Z 1 thaih State Y epn Present State aelawngcridrb Input X 0 aelw Next State khxngwngcrepn State X aelaih Output Z 0 aetthawngcridrb Input X 1aelw Next State khxngwngcrepn State W aelaih Output Z 0 khxdi Output imepliyntam Input thaihimekidpyha momntary change hrux Glitch khxesiy ichcanwnsphawamakkwainkarxxkaebbwngcrchnidediywknxangxingState diagram 2011 11 05 thi ewyaebkaemchchin