BCD10進数で XH-YHを求めたいのに

>ACC = (0x99 + CarryBit) - YH;
 ACC += XH;
 DA(ACC);
 XH = ACC;
でいいかという問題だよね?
問題が起きそうなのはYHの下位が0の時
まず、ACC = (0x99 + CarryBit) - YH;  で 0x?A という値になる
これに対して10進補正をかけないでいいのかという事?

通常10進補正命令は、下位4ビットについて
・ ハーフキャリーが立ってるなら下位4ビットに6を足す
・ 9以上なら8bit分6を足す
 という仕様になっているなら大丈夫だろう