> > The only difference I see (that really matters) is how the bytes are > > copied to the result-pointer (i.e. using movzbl vs. movsbl)... but that's > > it. > > It is a cast. The generic C version for the other architectures makes > this more obvious. > > > If there is some deeper reason behind that - could you please point that > > out to me? And if there is such a thing, why is it not necessary for > > storing (e.g. stb_kernel)?? > > A load (sign-)extends a value to register size, a store doesn't. > > That's why you have e.g. in the MIPS instruction set LB, LBU and SB > but no SBU, it would do the same as SB.
all right .. thanks for the fast answer :-)