Comprehensive Rust(繁体中文) 202406pointer::write_volatile。 • 請勿保留參照。 • addr_of! 可用來取得結構體的欄位,而不必建立中繼參照。 • 揮發性存取:讀取或寫入作業可能會有副作用,因此請避免編譯器或硬體遭到重新排序、複製或省 略。 – 通常,如果您在寫入後讀取 (例如透過可變動參照),編譯器可能會假設讀取的值與剛寫入的值 相同,而不實際讀取記憶體。 • 有些用於硬體揮發性存取的現有 Crate 確實會保留 _reserved13: [u8; 3], } • #[repr(C)] 會指示編譯器依序排列結構體欄位,遵循與 C 相同的規則。以確保結構體具有可預 測的布局,因為預設的 Rust 表示法允許編譯器依自身判斷重新排序欄位 (和執行其他操作)。 53.5.3 驅動程式 現在讓我們在驅動程式中使用新的 Registers 結構體。 /// Driver for a PL011 UART. pub struct0 码力 | 356 页 | 1.41 MB | 1 年前3
共 1 条
- 1













