这是来自: BrokenThorn的代码
; compute next cluster
mov ax, WORD [cluster] ; identify current cluster from FAT
; is the cluster odd or even? Just divide it by 2 and test!
mov cx, ax ; copy current cluster
mov dx, ax ; copy current cluster
shr dx, 0x0001 ; divide by two
add cx, dx ; sum for (3/2)
mov bx, 0x0200 ; location of FAT in memory
add bx, cx ; index into FAT
mov dx, WORD [bx] ; read two bytes from FAT我不明白add cx, dx的逻辑,添加CX和DX的目的是什么?
有没有一张我可以想象的图表?
发布于 2014-03-03 21:57:58
FAT元素有12位长,因此必须将元素索引乘以1.5才能得到字节偏移量
https://stackoverflow.com/questions/22158025
复制相似问题