本帖最後由 阿達金田一 於 2022-7-28 13:40 編輯
(0xff) 是 磁碟號碼 / 磁碟位置
直接用 16進位表示一個磁碟, 等同 (255)
通常是用在 map iso
這和 () (hd0) (cd) (fd0) 之類的意思差不多...只是磁碟的表示法
另外 grub4dos 和 grub4efi 可能有些不同 (我是指硬體底層)
因為早期的 Legacy Bios
gurb4dos 的 ( ) 表示法...其實和 Legacy BIOS 是有關係
所以也等同 BIOS 中的 磁碟位置
例如
(fd0) 是從 (0x0) 開始 到 (0x7f)
而 (hd0) 是從 (0x80) 開始 ... (hd0,0) 也可以用 (0x80,0) 表示
而 CD/DVD 一般是 (0xe0) 開始
註:
Legacy BIOS 中磁碟 0x00-0x7F 為 Floppy Disk, 而 0x80-0xFF 為 Fixed Disk
簡單說除了 Floppy Disk 軟碟 , 其它像 HDD CD/DVD(ISO) 基本都用 0x80 - 0xFF
而 Legacy BIOS HDD 開機...通常是用 (0x80) 開機
所以 BIOS 一般會把要用來 開機 HDD 放到 (0x80)
(所以 grub4dos 這部份和 硬碟位置 是有關係的)
所以早期 USB-HDD 開機...可能是會去佔用到 (0x80) (hd0)
原本的 HDD 可能就會放到 (0x81)
而 UEFI , grub4efi 我猜大概只是延用表示法的習慣
因為硬體上根本不一樣...所以意義上應該不同...
(0xff) 應該只是單純一種 數字表示法 而以
當然 grub4efi 可能會延用習慣 0x0 一樣是 fd0 , 0x80 是 hd0
%變數名% 這和 windows bat/cmd 的 環境變數 一個意思
就是一個變數的表示法
其中 @retval 是指 指令 回應值
例如
calc 1+2+3+4
echo %@retval%
%@retval% 會是 10
因為 calc 是計算 1+2+3+4 回應是 10 |