電路的耦合知識
作者:佚名 文章來源:本站原創 點擊數: 更新時間:2009-9-22
耦合是指兩個實體相互依賴於對方的一個量度.分為以下幾種:
非直接耦合:兩個模塊之間沒有直接關係,它們之間的聯係完全是通過主模塊的控製和調用來實現的
數據耦合:一個模塊訪問另一個模塊時,彼此之間是通過簡單數據參數 (不是控製參數、公共數據結構或外部變量) 來交換輸入、輸出信息的。
標記耦合 :一組模塊通過參數表傳遞記錄信息,就是標記耦合。這個記錄是某一數據結構的子結構,而不是簡單變量。
控製耦合:如果一個模塊通過傳送開關、標誌、名字等控製信息,明顯地控製選擇另一模塊的功能,就是控製耦合。
外部耦合:一組模塊都訪問同一全局簡單變量而不是同一全局數據結構,而且不是通過參數表傳遞該全局變量的信息,則稱之為外部耦合。
公共耦合:若一組模塊都訪問同一個公共數據環境,則它們之間的耦合就稱為公共耦合。公共的數據環境可以是全局數據結構、共享的通信區、內存的公共覆蓋區等。
內容耦合:如果發生下列情形,兩個模塊之間就發生了內容耦合
(1) 一個模塊直接訪問另一個模塊的內部數據;
(2) 一個模塊不通過正常入口轉到另一模塊內部;
(3) 兩個模塊有一部分程序代碼重迭(隻可能出現在匯編語言中);
(4) 一個模塊有多個入口。
耦合強度
耦合的強度依賴於以下幾個因素:(1)一個模塊對另一個模塊的調用;(2)一個模塊向另一個模塊傳遞的數據量;(3)一個模塊施加到另一個模塊的控製的多少;(4)模塊之間接口的複雜程度。
耦合按從強到弱的順序可分為以下幾種類型:
(1)內容耦合。當一個模塊直接修改或操作另一個模塊的數據,或者直接轉入另一個模塊時,就發生了內容耦合。此時,被修改的模塊完全依賴於修改它的模塊。
(2)公共耦合。兩個以上的模塊共同引用一個全局數據項就稱為公共耦合。
(3)控製耦合。一個模塊在界麵上傳遞一個信號(如開關值、標誌量等)控製另一個模塊,接收信號的模塊的動作根據信號值進行調整,稱為控製耦合。
(4)標記耦合。模塊間通過參數傳遞複雜的內部數據結構,稱為標記耦合。此數據結構的變化將使相關的模塊發生變化。
(5)數據耦合。模塊間通過參數傳遞基本類型的數據,稱為數據耦合。
(6)非直接耦合。模塊間沒有信息傳遞時,屬於非直接耦合。
如果模塊間必須存在耦合,就盡量使用數據耦合,少用控製耦合,限製公共耦合的範圍,堅決避免使用內容耦合。
Tags:電路的耦合,知識,耦合
責任編輯:admin