Z80 & Assembly Language. การจัดขาของ CPU Z-80 Memory Design.

Slides:



Advertisements
งานนำเสนอที่คล้ายกัน
บทที่ 11 โปรแกรมย่อยขั้นต้น
Advertisements

การผลิตโค๊ดสำหรับ Procedure Call
CS Assembly Language Programming
CS Assembly Language Programming
CS Assembly Language Programming
CS Assembly Language Programming
ASSIGN3-4. InstructionResult Z-FlagC-FlagP-FlagS-FlagO-Flag MOV AL,9Eh 9Eh H ????? ADDAL,9Eh 3C ADD AL,1Eh 5A
แบบฝึกหัด 24/12/09. เมื่อคอมพ์ทำคำสั่งต่อไปนี้ จงแสดง ผลลัพธ์และ ค่าแฟลกต่างๆ InstructionResult Z-FlagC-FlagP- Flag S- Flag O- Flag MOV AL,3h Inc AL Mov.
บทที่ 15 โปรแกรมย่อยและแสต็ก
บทที่ 17 คำสั่งตารางและการสร้างแมคโคร
ธนาวินท์ รักธรรมานนท์
Debug #2 โครงสร้างคอมพิวเตอร์ และภาษาแอสเซมบลี้
เซกเมนต์ (Segment) โครงสร้างคอมพิวเตอร์ และภาษาแอสเซมบลี้
Computer Components โครงสร้างคอมพิวเตอร์ และภาษาแอสเซมบลี้
ปฏิบัติการแบบแยก Branch Operation.
Basic Stamp Microcontroller
การกระโดดและการวนรอบ
Assembly Languages: PDP8
วัตถุประสงค์การใช้งาน PLC
คุณลักษณะของคำสั่งภาษาเครื่อง ชนิดของตัวถูกดำเนินการ
การเขียนคำสั่งควบคุม การทำงานขั้นพื้นฐาน
การเขียนโปรแกรมคอมพิวเตอร์ Computer programming
หน่วยที่ 3 ภาษาคำสั่งพื้นฐานที่ใช้เขียนโปรแกรม PLC
หน่วยที่ 2 โครงสร้างโปรแกรมเมเบิลคอนโทรลเลอร์
หน่วยที่ 1 อุปกรณ์อินพุท/เอ้าท์พุทเซนเซอร์และวงจรควบคุม
4.2 โปรแกรมป้องกันการทำงานพร้อมกัน
หน่วยที่ 5 การประยุกต์ใช้โปรแกรมสำเร็จรูปร่วมกับเซนเซอร์
หน่วยที่ 2 โครงสร้างโปรแกรมเมเบิลคอนโทรลเลอร์
คำสั่ง : TIMER และ TIMH (FUN15)
การรับส่งข้อมูลระหว่าง Group 1 กับ Group 2
สมองคน (Human Brain) Human Brain ความจำ จินตนาการและความสร้างสรรค์
การรับส่งข้อมูลระหว่าง Group 2 กับ Group 3 ในสถานีเคลื่อนที่ (Mobile Station) 2 พฤษภาคม G Research Project 3G Research Project Thai Wireless Consortium.
ครั้งที่ 7 รีจิสเตอร์ (REGISTER). รีจิสเตอร์ (Register) รีจิสเตอร์เป็นวงจรความจำที่ใช้ในการเก็บค่า ทางไบนารี่ ใช้ในการเก็บค่าในระหว่างการ ประมวลผลโดยใช้ฟลิป.
เตชิษฐ์ เรือง ไพศาล.  คอมพิวเตอร์เป็นอุปกรณ์ไฟฟ้าที่ใช้ไฟฟ้า กระแสตรงทำงาน  ข้อมูลภายในเป็นข้อมูลดิจิตอล  …..  แทนข้อมูลเหล่านี้ด้วยแรงดันไฟฟ้า.
บทที่ 2 โครงสร้างและหน้าที่ การทำงาน ของระบบคอมพิวเตอร์
แนะนำไมโครคอนโทรเลอร์ ATMEGA 16
Introduction to Computer organization & Assembly Language
Chapter 12 Microprocessor without Interlocked Pipeline Stages (MIPS)
หลักการโปรแกรม อ.ธนากร อุยพานิชย์.
การจัดการโปรเซส T.Kunlaya Charoenmongkonvilai
stack #2 ผู้สอน อาจารย์ ยืนยง กันทะเนตร
ปั๊มลม FIAC โดย ธนวัฒน์ ก้านบัว.
Boson Netsim Simulator ภาควิชาวิศวกรรมไฟฟ้าและคอมพิวเตอร์
ความยืดหยุ่น ( Elasticity )
ครั้งที่ 2 การบวกลบเลขฐานสอง (Binary Addition-Subtraction)
ระบบเลขฐาน.
หน่วยที่ 2 ข้อมูลและสารสนเทศ
STACK สแตก(stack) เป็นโครงสร้างข้อมูลแบบเชิงเส้น ที่มีการใส่ข้อมูลเข้า และนำข้อมูลออกเพียงด้านเดียว ดังนั้น ข้อมูลที่เข้าไปอยู่ใน stack ก่อนจะออกจาก stack.
BC320 Introduction to Computer Programming
เรียนรู้การใช้งานโปรแกรม เพื่อจำลองระบบไมโครคอนโทรลเลอร์
ไมโครคอนโทรลเลอร์ บทที่ 11.
การประยุกต์เข้ากับวงจรทางคณิตศาสตร์
บทที่ 1 โครงสร้างคอมพิวเตอร์พื้นฐาน
Interrupt & Timer.
Introduction to Microprocessors
Microcomputer and Assembly Language
โปรแกรมภาษาแอสเซมบลี้เบื้องต้น
การเขียนโปรแกรมแบบวนซ้ำ: คำสั่ง while คำสั่ง do….while
รายวิชา ไมโครโปรเซสเซอร์ในงานอุตสาหกรรม
แผงวงจรพ่วง (Peripheral Board)
รายงานการระบาดศัตรูพืช
การบริหารสัญญา และหลักประกัน.
ระบบตัวเลข, Machine code, และ Register
ผู้ช่วยศาสตราจารย์จุฑาวุฒิ จันทรมาลี
เรื่อง ความต้านทานไฟฟ้า
การสร้างแบบสอบถาม และ การกำหนดเงื่อนไข.
รายวิชา งานไฟฟ้าเบื้องต้นสำหรับครูอุตสาหกรรมศิลป์
2 โครงสร้างข้อมูลแบบสแตก (STACK).
Programmable Logic Control
Decision: Single and Double Selection (if and if-else statement)
ใบสำเนางานนำเสนอ:

Z80 & Assembly Language

การจัดขาของ CPU Z-80

Memory Design

Z80 CPU Register Configuration

Z80 Status Indicator Flags SZXHXP/VNC Symbol Field Name C Carry Flag N Add/Subtract P/V Parity/Overflow Flag H Half Carry Flag Z Zero Flag S Sign Flag X Not Used

Instruction Notation

1) กลุ่มคำสั่งที่เกี่ยวข้องกับการโอนย้ายข้อมูล 8 บิท LD r, (IX+d) LD r, (IY+d) LD r, (HL) LD (IX+d), r LD (IY+d), r LD (HL), r LD (IX+d), n LD (IY+d), n LD (HL), n LD r, n LD A, (nn) LD (nn), A LD A, I LD I, A

2 ) กลุ่มคำสั่งที่เกี่ยวข้องกับการโอนย้ายข้อมูล 16 บิท LD SP, nn LD SP, (nn) LD SP, IX LD SP, IY LD SP, HL LD (nn), SP PUSH QQ PUSH IX PUSH IY POP IX POP IY POP QQ LD IX, nn LD IY, nn LD IX, (nn) LD (nn), IX LD IY, (nn) LD (nn),IY LD HL, (nn) LD (nn), HL

3) กลุ่มคำสั่งที่เกี่ยวข้องกับการโอนย้าย กลุ่มของข้อมูล และการค้นหาข้อมูลในกลุ่ม CPD CPI CPIR CPDR EX (SP), IX EX (SP), IY EX AF, AF' EX (SP), HL EX DE, HL EXX LDD LDDR LDI LDIR

4) กลุ่มคำสั่งที่เกี่ยวข้องกับการคำนวณทางคณิตศาสตร์ 8 บิท SUB n SUB r SUB (IX+d) SUB (IY+d) SUB (HL) SBC A, n SBC A, r SBC A, (IY+d) SBC A, (IX+d) SBC A, (HL) INC r INC (IX+d) INC (IY+d) INC (HL) DEC r DEC (HL) DEC (IX+d) DEC (IY+d) ADD A, n ADD A, r ADD A, (IX+d) ADD A, (IY+d) ADD A, (HL) ADC A, n ADC A, r ADC A, (IX+d) ADC A, (IY+d) ADC A, (HL)

5) กลุ่มคำสั่งที่เกี่ยวข้องกับการคำนวณทาง คณิตศาสตร์ 16 บิท ADD IX, SP ADD IY, SP ADD HL, SP ADC HL, SP SBC HL, SP INC IX INC IY INC QQ INC SP DEC IX DEC IY DEC QQ DEC SP

6) กลุ่มคำสั่งที่เกี่ยวข้องกับทางลอจิก 8 บิท XOR n XOR r XOR (IX+d) XOR (IY+d) XOR (HL) CP n CP r CP (IX+d) CP (IY+d) CP (HL) AND n AND r AND (HL) AND (IX+d) AND (IY+d) OR n OR r OR (IX+d) OR (IY+d) OR (HL)

7) กลุ่มคำสั่งที่เกี่ยวข้องกับการกระโดดข้ามการทำงาน JP nn JP (IX) JP (IY) JP (HL) JP CC, nn JR d JR CC, d DJNZ r

8) กลุ่มคำสั่งที่เกี่ยวข้องกับการทดสอบเซ็ทและรีเซ็ทบิท SET b, r SET b, (IX+d) SET b, (IY+d) SET b, (HL) BIT b, r BIT b, (IX+d) BIT b, (IY+d) BIT b, (HL) RES b, r RES b, (IX+d) RES b, (IY+d) RES b, (HL)

9) กลุ่มคำสั่งที่เกี่ยวข้องกับการเลื่อนและหมุนข้อมูล RL r RLA RL (IX+d) RL (IY+d) RL (HL) RR r RRA RR (IX+d) RR (IY+d) RR (HL) RLD RRD SLA r SLA (IX+d) SLA (IY+d) SLA (HL) SRA r SRA (IX+d) SRA (IY+d) SRA (HL) SRL r SRL (IX+d) SRL (IY+d) SRL (HL) RLC r RLCA RLC (IX+d) RLC (IY+d) RLC (HL) RRC r RRCA RRC (IX+d) RRC (IY+d) RRC (HL)

10) กลุ่มคำสั่งที่เกี่ยวข้องกับการควบคุม CPU และการคำนวณอื่น ๆ DAA CCF NEG HALT IM0 IM1 IM2 NOP EI DI SCF CPL

11) กลุ่มคำสั่งที่เกี่ยวข้องกับการเรียกโปรแกรมย่อย CALL nn CALL CC, nn RET RET CC RST n RETI RETN

12) กลุ่มคำสั่งที่เกี่ยวข้องกับอินพุท / เอาท์พุท IN A, (n) IN r, (C) OUT (n), A OUT (C), r INIR IND INT INDR OTDR OUTD OTIR OUIT

SUM 1-10 ORG8000H LD D,00H LD B,01H A LOOP:LD A,D ADDA,B INCB LDD,A LDA,B 8009 FE 0B CP 0BH 800B C JP NZ,LOOP 800E FF RST38H 0+ 1= 1 -> = 3 -> = 6 -> =10 -> A 10+ 5=15 -> F 15+ 6=21 -> =28 ->1C 28+ 8=36 -> =45 ->2D 45+10=55 ->37

Block Diagram

8255 Pin layout & Command Word

8255 Pin on User Port ORG 8000H 80003E 90 LD A,90h 8002 D3 83 OUT (83H),A 8004 DB 80 IN A,(80H) 8006 D3 81OUT(81H),A 8008 C JP 8004 IN and OUT

HDSP-521G

รายการอุปกรณ์ 1. Project Board/BreadBoard/ Proto Board 1 2. Flat Cable 40 Pins 1 3. IDC Connector 1 4. DIP Connectot 1 5. LED8 6. DIP Switch 8 ch 1 7. Resistor 100Ohm 8 8. สายต่อวงจร - 9. คีมตัด คีมจับ คัตเตอร์ -

รายการอุปกรณ์ Project Board/Bread Board/Proto Board

รายการอุปกรณ์ Ribbon Flat Cable Flat Cable 40 Pins

รายการอุปกรณ์ IDC Socket Connector 40 Pin

รายการอุปกรณ์ DIP Plug Connector 40 Pins

รายการอุปกรณ์ LED Lamp 5mm

รายการอุปกรณ์ Dip Switch 8 Positions, SPST

รายการอุปกรณ์ Resistor 100 Ohm

รายการอุปกรณ์ สายต่อวงจร

รายการอุปกรณ์ คีมตัด คีมจับ คัตเตอร์

ตัวอย่างโปรแกรมไฟวิ่ง 4 แบบ ORG8000H E 82 LD A,82H D3 83 OUT(83H),A DB 81 LOOP:IN A,(81H) FE FF CP0FFH FA JRZ,LOOP A ; A FE FE CP0FEH C JRNZ,LOOP E CC CALLZ,LED FE FD LOOP1:CP0FDH CC CALLZ,LED FE FB CP0FBH CC CALLZ,LED B FE F7 CP0F7H D CC CALLZ,LED E2 JRLOOP ; LED LED1:LDB, E 80 LDA,80H D3 80 LED1_OUT (80H),A CD 5E 80 CALLDELAY B CB 0F RRCA D 10 F7 DJNZLED1_ F C9 RET ; LED LED2:LD B, E 80 LDA,80H D3 80 LED2_OUT (80H),A CD 5E 80 CALLDELAY B CB 07 RLCA D 10 F7 DJNZLED2_ F C9 RET ; LED LED3:LD B, E 55 LDA,55H D3 80 LED3_OUT (80H),A CD 5E 80 CALLDELAY B CB 0F RRCA D 10 F7 DJNZLED3_ F C9 RET ; LED LED4:LD B, E 55 LDA,55H D3 80 LED4_OUT (80H),A CD 5E 80 CALLDELAY CB 07 RLCA B 10 F7 DJNZLED4_ D C9 RET E ; DELAY E DELAY:LD HL,9000H LDDE,0001H ED 52 DELAY_:SBC HL,DE FC JR NC,DELAY_ C9 RET ;