您的位置:首页 > 其它

日文shift-JIS编码

2008-12-24 15:01 197 查看

シフトJISの1バイトコード(半角文字)のエリアマップ

16進数
2進数
下 位 4 ビ ッ ト
0
0000
1
0001
2
0010
3
0011
4
0100
5
0101
6
0110
7
0111
8
1000
9
1001
a
1010
b
1011
c
1100
d
1101
e
1110
f
1111





0
0000
0
NUL
1
SOH
2
STX
3
ETX
4
EOT
5
ENQ
6
ACK
7
BEL
8
BS
9
HT
10
LF
11
VT
12
FF
13
CR
14
SO
15
SI
1
0001
16
DLE
17
DC1
18
DC2
19
DC3
20
DC4
21
NAK
22
SYN
23
ETB
24
CAN
25
EM
26
SUB
27
ESC
28
FS
29
GS
30
RS
31
US
2
0010
32
SP
33
!
34
"
35
#
36
$
37
%
38
&
39
'
40
(
41
)
42
*
43
+
44
,
45
-
46
.
47
/
3
0011
48
0
49
1
50
2
51
3
52
4
53
5
54
6
55
7
56
8
57
9
58
:
59
;
60
<
61
=
62
>
63
?
4
0100
64
@
65
A
66
B
67
C
68
D
69
E
70
F
71
G
72
H
73
I
74
J
75
K
76
L
77
M
78
N
79
O
5
0101
80
P
81
Q
82
R
83
S
84
T
85
U
86
V
87
W
88
X
89
Y
90
Z
91
[
92
/
93
]
94
^
95
_
6
0110
96
`
97
a
98
b
99
c
100
d
101
e
102
f
103
g
104
h
105
i
106
j
107
k
108
l
109
m
110
n
111
o
7
0111
112
p
113
q
114
r
115
s
116
t
117
u
118
v
119
w
120
x
121
y
122
z
123
{
124
|
125
}
126
~
127
DEL
8
1000
128 129 130 131 132 133 134 135 136 137 138 139 140 141 142 143
9
1001
144 145 146 147 148 149 150 151 152 153 154 155 156 157 158 159
a
1010
160 161
162
163
164
165
166
167
168
169
170
171
172
173
174
175
b
1011
176
177
178
179
180
181
182
183
184
185
186
187
188
189
190
191
ソ
c
1100
192
193
194
195
196
197
198
199
200
201
202
203
204
205
206
207
d
1101
208
209
210
211
212
213
214
215
216
217
218
219
220
221
222
223
e
1110
224 225 226 227 228 229 230 231 232 233 234 235 236 237 238 239
f
1111
240 241 242 243 244 245 246 247 248 249 250 251 252 253 254 255

文字コード表 シフトJIS(Shift_JIS)

シフトJISの1バイトコード(半角文字)のエリア

0x00~0x1f、0x7f は制御コードです

0x20~0x7e はASCII文字です

0xa1~0xdf は半角カタカナです

シフトJISの2バイトコード(全角文字)のエリア(JIS X 0208の漢字エリア)
  上位1バイト  0x81~0x9f、 0xe0~0xef
  下位1バイト  0x40~0x7e、 0x80~0xfc
  ですが機種に依存しない観点より、HTMLで以下の水色エリアは使用しないのが無難です

水色エリアはJIS X 0208 (1990) to Unicode 漢字コード表に存在しないコードです

0x8540~ 0x889e は機種依存文字の主なエリアです

0xeb40~ 0xeffc はMacOS では縦書用文字、Windows では特殊な外字エリアです

0xf040~ は外字エリアです(記載していません)

perlでのシフトJISの文字化けについて

perlで /(0x5c) は「次につづく文字が何であるかを表す」特殊な意味合いを持ちます

下の全角文字のエリアの下位バイト5cの列の文字を用いると確実に文字化けします
5cの列の文字の後に / をつける事により、// が / を意味する事となり回避できます
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签: