MOV AL,00H--- means 0000 0000(binary) is loaded into the register AL. Register AL is of 8 bits (Intel x86 architecture).
Now in each loop the value of AL is incremented by one.....this will go on till AL value becomes 1111 1111(binary) i.e 255(decimal).
After this when it is incremented i.e 1111 1111 + 0000 0001= 10000 0000. Now this is an overflow as AL is of 8 bits. The MSB is discarded(the carry out) and hence AL becomes 0000 0000 again. Therefore, it comes out of the loop.
Totally it will loop= 255 + 1(for the last calculation) = 256
Hence B is the correct option
PS: 8085 is out of GATE syllabus now