vhdl resize signed numeric_std
In add and sub, there's no difference between signed and unsigned operation. I don't understand, what you expect different here.
0x0c + 0x62 = 0x6e is correct, either if interpreting 0x62 and 0x6e as positive or negative numbers.
In the first case: 12 + 98 = 110, in the second 12 + (-30) = -18
If the result would be sign extended to an 8-Bit number, there's a difference, but you concenated a zero bit to the left.
The first examples aren't understandable because of missing definitions for the first line.