微机原理 课后?标准答案 - 百度文库

ԶȡֵӶֿԽһݴ̡

2.IBM PC/XTУ8237Aͨ0ڶԶ̬RAMˢ£ΪԶԤùܡͷβһˢº󣬾ֿԶɱˢ£ݲӶ̬RAMжʧͬһڴַݿظС

7.21 DMAڴ浽ڴĴʱʲôص㣿

𣺹̶ͨ0ĵַĴԴַͨ1ĵַĴֽڼĿĵַͼֵʱĿĵַͼֵͨһм11ԴֵַͨƼĴD1λãΪ1򲻱䡣ݴΪݴʱDMAݴá⣬DMAڴ浽ڴĴͨÿƼĴD0=1õġ

7.22 DMA8237Aȼģ

8237Aȼʽ̶ȼʽȼߵ͹̶Ϊͨ0123ѭȼʽͨȼѭijͨһδȼΪͣڵĸһͨȼΪߡ

7.23 8237Aijʼ8237AĶ˿ڵַΪ0000~000FH

ͨ0ڿ鴫ģʽַ1仯ԶԤùܣͨ1ڵֽڶ䣬ַ1仯ԶԤùܣͨ2ͨ3ͨ1ͬʽȻ8237AʹDACKΪߵƽЧDREQΪ͵ƽЧù̶ȼʽ8237

MOV AL04H MOV DXDMA+8 ;DMAΪ˿׵ַ0000HDMA+8ΪƼ ;˿ں OUT DXAL ;ر8237A MOV AL00

MOV DXDMA+0DH ;DMA+0DHΪ˿ں OUT DXAL ;(λ)

MOV DXDMA+0BH ;DMA+0BHΪģʽĴĶ˿ں MOV AL98H OUT DXAL ;ͨ0ѡģʽģʽΪ98Hģ

;ʽַ1仯ԶԤù MOV AL69H OUT DXAL ;ͨ1ѡģʽģʽΪ69Hֽڶ

;䣬ַ1仯ԶԤù MOV AL6AH OUT DXAL ;ͨ2ѡģʽģʽΪ6AH:ͬͨ1 MOV AL6BH OUT DXAL ;ͨ3ѡģʽģʽΪ6BH:ͬͨ1 MOV DXDMA+8 MOV AL0C0H ;ָʽΪC0H: DACKߵƽЧDREQ ;͵ƽЧ̶ȼ OUT DXAL

MOV DXDMA+0FH ;DMA+0FHΪۺ˿ں MOV AL0 OUT DXAL ;ȥĸͨ

7.24 Ӳжʱ

𣺢 ǸҪʱ䳣һӳӳ򡣵ӳӳִ󣬿ֱִIJҲָһźΪʱ

Ӳʹü/ʱҪĶʱʱ䣬ָԼ/ʱöʱָ/ʱǼ/ʱʼƵȷֵʱԶһʱ

7.25 8253/ʱУʱźCLKźGATE

ʲôã

ʱźCLK˼ʣǼ1ݡźGATEΪʱӵĿźţԿƼͣ

7.26 ˵82536ֹʽµص㣬˵ʹóϡ

𣺢 ģʽ0ģʽ1ģʽ4ģʽ5ΪӲIJԶظļʽģʽ2ģʽ3ΪҲӲԶظĶʱʽ

Ϊʱ8253GATE½м1ֵʱһźţ˼̱Ϊʱʱ8253ſGATE½м1ֵʱԶװֵ1˻᲻ϵزΪʱĶʱ

ʱʽһʵʱƼԲУʱӶʱʷȳϡʽⲿ¼ļϵIJƷȳϡ

7.27 8253ģʽ4ģʽ5ʱʲôͬ

ģʽ4GATEΪ͵ƽʱֹͣģʽ5ſGATEشӲGATEΪ͵ƽʱӰ

7.28 ̽82530Ϊģʽ1ֵΪ3000H

1Ϊģʽ2ֵΪ2010H2Ϊģʽ4ֵΪ4030HַΪ0070H0072H0074H0076H

MOV AL32H ;ü0Ϊģʽ1 OUT 76HAL

MOV AX3000H ;дֵ OUT 70HAL MOV ALAH OUT 70HAL

MOV AL74H ;ü1Ϊģʽ2 OUT 76HAL

MOV AX2010H ;дֵ OUT 72HAL MOV ALAH

OUT MOV OUT MOV OUT MOV OUT

72HAL

AL0B8H ;ü2Ϊģʽ4 76HAL

AX4030H ;дֵ 74HAL ALAH 74HAL

7.29 CPUӦDMAӦҪжӦ죬

ԭ

𣺵CPU⵽źźڵǰڵT4״̬TI״̬½ؾͿӦߣӦźHLDACPU⵽INTRʱҪȵǰִָܷһINTA壬жӦINTAſһжӦźšӦҪжӦ졣

7.30 8259AȼѭʽǰȼΪIR4

Ҫʹȼ͵ΪIR1Ӧĸֵ֣Ƕ٣

1.OCW2֡

2.OCW2ľֵC1H(=11000001B)дżַ˿ڡ

7.31 һ8259AгʼijΣΪμ

עͣ˵ʼֵĺ塣

PORT0 EQU 40H ;8259Ażַ˿ں PORT1 EQU 41H ;8259Aַ˿ں

MOV AL13H ;ƳʼICW1Ϊ13HжΪش ;ʽƬ8259AдICW4

MOV DXPORT0 ;ȡ8259Ażַ˿ OUT DXAL ;ICW1 INC DX ;ȡ8259Aַ˿

MOV AL08H ;жʼICW2Ϊ08HӦ ;IR0~IR7жΪ08H~0FH OUT DXAL ;ICW2

MOV AL06H ;ʽƳʼICW4Ϊ06HȫǶ ;ʽǻ巽ʽжԶʽ8080/8085 ;ϵͳ OUT DXAL ;ICW4 𣺳ʼֵĺע͡

7.32 һʽ8259AϵͳгʼijΣ

³μϸעͣ˵ʼֵĺ塣

;Ƭʼ M82590 EQU 40H ;Ƭ8259Ażַ˿ں M82591 EQU 41H ;Ƭ8259Aַ˿ں

MOV AL11H ;ƳʼICW1Ϊ11HжΪش

;ʽƬ8259AICW4

MOV DXM82590 ;ȡƬ8259Ażַ˿ OUT DXAL ;ICW1

MOV AL08H ;жʼICW2Ϊ08HӦ ;IR0~IR7жΪ08H~0FH INC DX ;ȡƬ8259Aַ˿ OUT DXAL ;ICW2

MOV AL04H ;ICW3Ϊ04HֻIR2дƬ8259A OUT DXAL ;ICW3

MOV AL01H ;ʽƳʼICW4Ϊ01HȫǶ ;ʽǻ巽ʽжԶʽ ;8086/8088ϵͳ

OUT DXAL ;ICW4 ;Ƭʼ S82590 EQU 90H ;Ƭ8259Ażַ˿ں S82591 EQU 91H ;Ƭ8259Aַ˿ں

MOV DXS82590 ;ȡƬ8259Ażַ˿ MOV AL11H ;ƳʼICW1Ϊ11Hͬ OUT DXAL ;ICW1

MOV AL70H ;жʼICW2Ϊ70HӦ ;IR0~IR7жΪ70H~77H INC DX ;ȡƬ8259Aַ˿ OUT DXAL ;ICW2

MOV AL02H ; ICW3Ϊ02HʾƬƬIR2 OUT DXAL ;ICW3

MOV AL01H ;ʽƳʼICW4Ϊ01HȫǶ ;ʽǻ巽ʽжԶʽ ;8086/8088ϵͳ OUT DXAL ;ICW4 𣺸ʼֵĺע͡

7.33 8237AڽеֽڷʽDMAͿ鷽ʽDMAʱ

ʲô

ڣֽڷʽʱDMAÿһֽڴ󣬱ͷϵͳߣCPUٿռһڡ鴫䷽ʽʱֻеֽڼΪ0ӶEOPһⲿI/OӿDMAEOPһ͵ƽźʱ8237Aͷ߶䡣

7.34 һפڴжϷܺװ

Դ˳עͽв䣬Աõһע嵥

STACK SEGMENT ;öջ DW 256 DUP (?) STACK ENDS DATA SEGMENT ;ݶ 8259P0 EQU 40H ;8259Ażַ˿ں

ϵͷ779662525#qq.com(#滻Ϊ@)