1 / 22

Structures & Records

Structures & Records. SCC : Suthida Chaichomchuen std@kmitnb.ac.th. Structure : Definition. การจัดโครงสร้างข้อมูลชนิดใหม่ โดยประกอบด้วยกลุ่มของข้อมูลหลายชนิด ซึ่งเมื่ออยู่รวมกันแล้วจะเป็นกลุ่มข้อมูลที่มีความหมายใหม่. Structure : General Format. Structure N ame STRUC [Defined fields]

talmai
Download Presentation

Structures & Records

An Image/Link below is provided (as is) to download presentation Download Policy: Content on the Website is provided to you AS IS for your information and personal use and may not be sold / licensed / shared on other websites without getting consent from its author. Content is provided to you AS IS for your information and personal use only. Download presentation by click this link. While downloading, if for some reason you are not able to download a presentation, the publisher may have deleted the file from their server. During download, if you can't get a presentation, the file might be deleted by the publisher.

E N D

Presentation Transcript


  1. Structures & Records SCC : Suthida Chaichomchuen std@kmitnb.ac.th

  2. Structure : Definition • การจัดโครงสร้างข้อมูลชนิดใหม่ โดยประกอบด้วยกลุ่มของข้อมูลหลายชนิด ซึ่งเมื่ออยู่รวมกันแล้วจะเป็นกลุ่มข้อมูลที่มีความหมายใหม่

  3. Structure : General Format StructureName STRUC [Defined fields] StructureName ENDS

  4. Structure : Example กำหนดโครงสร้างข้อมูลแบบ Structure ชื่อ Personal ประกอบด้วยข้อมูล 4 ฟิลด์ PERSONAL STRUC ID DB 0,0 NAME DB 10 DUP (?) AGE DB ? SALARY DW ? PERSONAL ENDS

  5. Structure : Variable define การกำหนดตัวแปรชนิด Structure มีรูปแบบดังนี้ VarName StructureName <> ชื่อตัวแปร ชื่อ Structure สัญลักษณ์ การกำหนดค่า

  6. Structure : Variable : Example1 • Emp1 PERSONAL <> • เป็นการประกาศให้ตัวแปร Emp1 เป็นชนิด structure ชื่อ Personal โดยไม่มีการกำหนดค่าเริ่มต้นให้กับตัวแปร

  7. Structure : Variable : Example2 Emp2 PERSONAL 100 Dup (<>) เป็นการประกาศให้ตัวแปร Emp2 เป็นชนิด structure ชื่อ Personal จำนวน 100 ชุด และ ไม่มีค่าเริ่มต้น

  8. Structure : Operation การกำหนดค่าในแต่ละฟิลด์ของตัวแปร structure ใช้รูปแบบดังนี้ Var_name.Field_name ชื่อตัวแปร.ชื่อฟิลด์

  9. Structure : Operation : Example1 MOV AL , Emp1.Name[2] คัดลอกค่าในไบต์ที่ 3 ของฟิลด์ Name ในตัวแปร Emp1 ใส่ในรีจิสเตอร์ AL

  10. Structure : Operation : Example2 MOV AL , Emp2 + 4*15.Name[2] คัดลอกข้อมูลไบต์ที่ 3 ของฟิลด์ Name ของชุดข้อมูลที่ 5 ในตัวแปร Emp2 มาใส่ในรีจิสเตอร์ AL

  11. Record : Definition • การจัดโครงสร้างข้อมูลชนิดใหม่ โดยประกอบด้วยกลุ่มข้อมูลในระดับบิต ซึ่งขนาดของชุดข้อมูลนั้น จะมีการจัดเก็บเป็นจำนวนไบต์

  12. Record : General Format RecordName RECORD FieldName : width=exp, … ชื่อเรคอร์ด RECORD ชื่อฟิลด์ : ขนาด=ค่าเริ่มต้น, ...

  13. Record : Example เป็นการประกาศใช้โครงสร้างข้อมูลชนิดเรคอร์ดชื่อ Pattern ซึ่งประกอบด้วย 4 ฟิลด์ PATTERN RECORD OPCODE:5, MODE:3, OPR1:4=8, OPR2:4

  14. Record : Variable define การกำหนดตัวแปร Record มีรูปแบบดังนี้ VarName RecordName <> ชื่อตัวแปร ชื่อเรคอร์ด สัญลักษณ์ที่ใช้ กำหนดค่าเริ่มต้น

  15. Record : Variable : Example1 Attrib1 PATTERN <> เป็นการประกาศให้ตัวแปร Attrib1 เป็นชนิด Record ชื่อ Pattern โดยไม่มีการกำหนดค่าเริ่มต้นให้กับตัวแปร

  16. Record : Variable : Example2 Attrib2 PATTERN <5,101B,4,1100B> เป็นการประกาศให้ตัวแปร Attrib2 เป็นชนิด Record ชื่อ Pattern โดยมีการกำหนดค่าเริ่มต้นให้กับตัวแปรทั้ง 4 ฟิลด์

  17. Record : Operators WIDTH operator • ใช้เพื่อหาค่าขนาดของเรคอร์ด หรือขนาดของแต่ละฟิลด์ในเรคอร์ด • ขนาด หมายถึง จำนวนบิต • รูปแบบคือ • WIDTH ชื่อเรคอร์ด/ชื่อฟิลด์ • เช่น MOV BH , WIDTH PATTERN

  18. Record : Operators MASK operator • เป็นการกำหนดให้ค่าบิตของฟิลด์ที่ถูก mask เป็น 1 ส่วนฟิลด์อื่นที่ไม่ถูก mask ค่าของบิตจะเป็น 0 • รูปแบบคือ • MASK ชื่อเรคอร์ด/ชื่อฟิลด์ • เช่น MOV AX , MASK MODE

  19. Record : Shift count • เมื่อต้องการนำค่าในแต่ละฟิลด์มาใช้งาน จะต้องทำการเลื่อนบิตไปทางขวามือก่อน โดยจำนวนครั้งที่ต้องเลื่อนสามารถใช้คำสั่งดังนี้ MOV CL , ชื่อฟิลด์ เช่น MOV CL , OPR1

  20. Record : Operators : Example1 MOV AL , WIDTH OPR1 กำหนดให้ค่าในรีจิสเตอร์ AL มีค่าเท่ากับขนาดของฟิลด์ OPR1

  21. Record : Operators : Example2 MOV BX , MASK OPR2 ถ้ามีการประกาศใช้ข้อมูลแบบ record ดังนี้ PATTERN RECORD OPCODE:5, MODE:3, OPR1:4=8, OPR2:4 จะได้ว่า BX=0000000000001111B

  22. Record : Operators : Example3 MOV CL , OPCODE ถ้ามีการประกาศใช้ข้อมูลแบบ record ดังนี้ PATTERN RECORD OPCODE:5, MODE:3, OPR1:4=8, OPR2:4 จะได้ว่า CL=11 (Decimal)

More Related