signed char s = 'ア';

とすると、マイナスの値になりますが、マイナスの値になると何か支障がでるのでしょうか?

下記サイトに、

>ASCIIコードと1バイトのJISコードだけが使用可能です。
>それでもJISコードを使用するときは、unsigned char型である必要があります。
>それは半角カタカナ等が(161〜223)に定義されているためです。

http://c-production.com/contents/c/sec02.html#05

と書かれています。
最上位バイトが立つ文字を扱うときは、unsigned charにしなければならないのでしょうか?