1.4.1_1.a Phương án nào dưới đây là SAI?
A. Lực tác dụng vào vật rơi tự do là lực hút của Trái Đất.
B. Tại mọi nơi trên Trái Đất, vật rơi với gia tốc như nhau.
C. Vật rơi tự do chuyển động theo phương thẳng đứng.
D. Chuyển động của sự rơi tự do là chuyển động nhanh dần đều.
1.4.1_2.b Phương án nào dưới đây là đúng?
A. Trong không khí, vật nặng sẽ rơi nhanh hơn vật nhẹ.
B. Trong chân không, vật nặng sẽ rơi nhanh hơn vật nhẹ.
C. Sức cản của không khí là nguyên nhân làm cho các vật rơi trong không khí nhanh chậm khác
nhau.
D. Ở cùng một nơi trên Trái Đất vật nặng sẽ rơi với gia tốc lớn hơn vật nhẹ.
1.3.2_3.b Một vật chuyển động với phương trình đường đi như sau: s = 5t − 0,2t
2
(m;s).
Phương trình vận tốc của chuyển động này là
A. v
t
= −5 + 0,4t.
B. v
t
= 5 − 0,2t .
C.B. v
t
= −5 − 0,2t.
D. v
t
= 5 − 0,4t.
1.3.2_4.b Phương trình chuyển động của một vật chuyển động thẳng biến đổi đều có dạng x =
10 − 10t + 0,2t
2
(m;s). Phương trình vận tốc của chuyển động này là
A. v
t
= −10 + 0,2t.
B. v
t
= −10 + 0,4t.
C. v
t
= 10 + 0,4t.
D. v
t
= −10 − 0,4t.
1.3.2_5.b Phương trình chuyển động của một vật chuyển động thẳng biến đổi đều có dạng x =
40 − 10t − 0,25t
2
(m;s). Lúc t = 0,
A. vật đang ở mét thứ 40, chuyển động ngược chiều dương với gia tốc 0,25m/s
2
.
B. vật có vận tốc 10m/s, chuyển động thẳng nhanh dần đều, ngược chiều dương, với gia tốc
0,5m/s
2
.
C. vật đang ở mét thứ 40, chuyển động thẳng chậm dần đều với gia tốc 0,5m/s
2
.
D. vật đang chuyển qua điểm có tọa độ 40m, chuyển động thẳng chậm dần đều với vận tốc đầu
là 10m/s.
1.3.2_6.b Một vật chuyển động thẳng biến đổi đều với đồ thị vận tốc như sau
Phương trình đường đi của chuyển động này là
A. s = 15t + 0,25t
2
B. s = 15t − 0,25t
2
C. s = −15t + 0,25t
2
D. s = −15t − 0,25t
2
trong đó s tính bằng mét, t tính bằng giây.
1.3.2_7.c Một vật chuyển động thẳng biến đổi đều với đồ thị vận tốc như sau:
Vật dừng lại ở giây thứ
A. 40
B. 90
C. 50
D. 80
1.3.3_1.a. Một vật chuyển động thẳng biến đổi đều không vận tốc đầu và đi được quãng đường
s mất thời gian 3s. Thời gianvật đi 8/9 đoạn đường cuối là
A. 1s
B. 4/3s
C. 2s
D. 8/3s
1.3.3_2.a. Một vật chuyển động thẳng chậm dần đều với vận tốc đầu là 10m/s, sau 5s thì vật
dừng lại. Lúc 2s vật có vận tốc là:
A. 4m/s.
B. 6m/s.
C. 8m/s.
D. 2m/s.
1.3.3_2.c Một vật chuyển động thẳng nhanh dần đều không vận tốc đầu với gia tốc 0,2m/s
2
và
đi được 36m. Chia quãng đường này thành 3 phần (đầu, giữa và cuối), để thời gian đi trên mỗi
phần quãng đường đều bằng nhau thì các quãng đường tương ứng là
A. 2m; 14m; 22m.
B. 2m; 16m; 18m.
C. 4m; 8m; 24m.
D. 4m; 12m; 20m.
O
10
15
10
v(m/s)
t(s)
O
15
20
10
v(m/s)
t(s)
20
1.3.3_3.b Một vật chuyển động thẳng biến đổi đều. Lúc t = 0 vật qua A (xA = −5m) theo chiều
dương với vận tốc 6m/s. Khi đến gốc tọa độ vật có vận tốc là 8m/s. Gia tốc của chuyển động
này là
A. 1,4m/s
2
.
B. 2m/s
2
.
C. 2,8m/s
2
.
D. 1,2m/s
2
.
1.3.3_4.b Một vật chuyển động thẳng biến đổi đều và có:
Lúc t = 4s thì x = 11m ;
Lúc t = 5s thì x = 18m ;
Lúc t = 6s thì x = 27m.
Loại chuyển động và gia tốc của nó là
A. chậm dần đều với gia tốc 2m/s
2
.
B. nhanh dần đều với gia tốc 2m/s
2
.
C. chậm dần đều với gia tốc 1m/s
2
.
D. nhanh dần đều với gia tốc 1m/s
2
.
1.4.3_1.a Một vật rơi tự do với gia tốc 10m/s
2
. Trong giây thứ ba vật rơi được quãng đường
A. 45m.
B. 20m.
C. 15m.
D. 25m.
1.4.1_3.b Vật rơi trong không khí được xem là rơi tự do khi
A. Vật có kích thước nhỏ.
B. Vật khá nặng.
C. Vật có hình cầu.
D. Cả hai yếu tố A và B.
1.4.3_3.b Một vật rơi tự do từ độ cao h với gia tốc g = 10m/s
2
. Trong giây cuối cùng vật rơi
được 35m. Thời gian vật rơi hết độ cao h là
A. 3s.
B. 4s.
C. 5s.
D. 6s.
CHƯƠNG III
Câu 1. Chọn phương án SAI trong các câu sau:
A. Chuyển động tròn đều là chuyển động có quỹ đạo là đường tròn và vật đi được những cung
tròn có độ dài bằng trong các khoảng thời gian bằng nhau bất kỳ.
B. Chuyển động tròn đều là chuyển động theo quỹ đạo tròn với vận tốc không đổi.
C. Vectơ vận tốc tức thời trong chuyển động cong có phương trùng với tiếp tuyến của quỹ đạo
tại điểm đó.
D. Trong chuyển động tròn, vận tốc dài bằng tích số vận tốc góc với bán kính quỹ đạo.
Câu 2. Trong các yếu tố sau:
I. Hướng vào tâm quỹ đạo.
II. Đặc trưng cho sự thay đổi về độ lớn của vận tốC.
III. Độ lớn tỉ lệ nghịch với bán kính quỹ đạo.
Các yếu tốc nào đúng cho gia tốc tức thời của chuyển động tròn đều.
A. I, II, III.
B. II, III.
C. I, III.
D. I, II.
Câu 3. Chọn cụm từ sau đây điền vào chỗ trống cho hợp nghĩa:
‘Trong chuyển động tròn đều vận tốc không đổi, gia tốc hướng tâm chỉ đặc trưng cho sự
biến đổi về của vận tốc, gia tốc hướng tâm thì vật quay càng nhanh (nghĩa
là của vận tốc biến thiên càng nhanh).
A. hướng, độ lớn, càng lớn, độ lớn B. độ lớn, phương, càng lớn, độ lớn
C. độ lớn, phương, càng lớn, phương D. độ lớn, phương, càng nhỏ, phương
Câu 4. Chọn phương án SAI trong các câu sau:
A. Chất điểm chuyển động tròn đều quay một vòng mất thời gian là một chu kỳ.
B. Số vòng quay trong một thời gian nào đó gọi là tần số quay.
C. Tần số quay tỉ lệ nghịch với chu kỳ quay.
D. Chu kỳ quay càng nhỏ thì vận tốc góc càng lớn.
Câu 5. Chọn phương án SAI trong các câu sau:
A. Góc quay càng lớn thì vật quay càng nhanh.
B. Chu kỳ quay càng nhỏ thì vật quay càng nhanh.
C. Tần số quay càng lớn thì vật quay càng nhanh.
D. Chu kỳ quay càng nhỏ thì vật tốc góc càng lớn.
Câu 6. Chọn phương án SAI trong các câu sau khi nói về một đĩa tròn quay đều quanh tâm của
nó:
A. Tất cả các điểm trên đĩa chuyển động tròn đều quanh tâm.
B. Tất cả các điểm trên đĩa chuyển động tròn đều với cùng chu kỳ.
C. Tất cả các điểm trên đĩa chuyển động tròn đều với cùng vận tốc góC.
D. Tất cả các điểm trên đĩa chuyển động tròn đều với vận tốc dài như nhau.
CHƯƠNG IV
Câu 1. Chọn các cụm từ sau đây điền vào chỗ trống cho hợp nghĩa:
“Lực là đại lượng đặc trưng cho của vật này vào vật khác, kết quả là hoặc làm cho
vật ”
A. Tác dụng, làm cho vật chuyển động, biến dạng
B. Tác dụng, truyền gia tốc cho vật, biến dạng
C. Tương tác, làm cho vật chuyển động, ngừng chuyển động
D. Tương tác, truyền gia tốc cho vật, chuyển động
Câu 2. Chọn phương án SAI trong các câu sau:
A. Một vật thay đổi vận tốc thì có lực tác dụng lên vật.
B. Tác dụng giữa hai vật bất kỳ bao giờ cũng là tác dụng tương hỗ
C. Vật không thể chuyển động khi không có lực tác dụng lên vật.
D. Lực có thể làm cho một vật bị biến dạng.
Câu 3. Chọn câu đúng
Một vật đang chuyển động với vận tốc
v
mà có các lực tác dụng lên nó cân bằng nhau thì chất
điểm sẽ:
A. Dừng lại ngay
B. Chuyển động thẳng chậm dần đều
C. Chuyển động thẳng đều với vận tốc
v
D. Có một dạng chuyển động khác
Câu 4. Chọn các cụm từ sau đây điền vào chỗ trống cho hợp nghĩa:
“ khi không chịu một lực nào tác dụng, hoặc các lực tác dụng vào nó cân bằng nhau”.
A. Một vật sẽ đứng yên hay chuyển động thẳng đều
B. Một vật sẽ đứng yên
C. Quán tính là tính chất của mọi vật bảo toàn vận tốc của mình
D. Cả a và c
Câu 5. Biểu hiện nào sau đây là biểu hiện của quán tính:
A. Hòn bi A đang đứng yên sẽ chuyển động khi hòn bi B đến chạm vào nó
B. Một ôtô đang chuyển động sẽ dừng lại khi bị hãm phanh
C. Bút máy tắt ta vẫy cho ra mực
D. Cả A, B và C đều đúng
Câu 6. Hãy chọn câu đúng
Nếu một chất điểm chịu tác dụng của hai lực
1
F
và
2
F
thì gia tốc của chất điểm:
A. Cùng hướng với
1
F
B. Cùng hướng với
2
F
C. Cùng hướng với hợp lực của
1
F
và
2
F
D. Tỉ lệ nghịch với độ lớn của hợp lực của
1
F
và
2
F
Câu 7. Chọn phương án SAI trong các câu sau khi nói về một vật chịu tác dụng của 1 lực
F
.
A. Gia tốc mà vật thu được cùng hướng với lực
F
B. Gia tốc của vật tỉ lệ thuận với lực F
C. Gia tốc của vật tỉ lệ nghịch với khối lượng
D. Vật đang chuyển động sẽ tiếp tục chuyển động thẳng đều
Câu 8. Hãy chọn câu đúng
Đặc điểm nào sau đây là đặc điểm của lực và phản lực:
A. Lực và phản lực bao giờ cũng cùng loại
B. Lực và phản lực luôn cân bằng nhau
C. Lực và phản lực không thể xuất hiện và mất đi đồng thời.
D. 3 ý trên đều đúng
Câu 9. Trong các đặc điểm sau đây:
I. Lực và phản lực luôn luôn xuất hiện và mất đi đồng thời.
II. Lực và phản lực bao giờ cũng cùng loại
III. Lực và phản lực không thể cân bằng nhau
Các đặc điểm nào là đặc điểm của lực và phản lực:
A. I, II, III. B. II, III. C. I, III. D. I, II.
Câu 15. Khi một vật chịu tác dụng của một vật khác duy nhất thì nó sẽ:
A. Chuyển động thẳng nhanh dần đều
C. Chỉ có biến dạng mà không thay đổi vận tốc
B. Chuyển động thẳng đều mãi mãi
D. Bị biến dạng và thay đổi vận tốc cả về hướng lẫn độ lớn.
Câu 31. Theo định luật I Newton thì:
A. Vật chỉ giữ nguyên trạng thái nghỉ hay chuyển động thẳng đều khi nó không chịu tác dụng
của bất kỳ vật nào kháC.
B. Do quán tính nên mọi vật đang chuyển động đều có xu hướng dừng lại.
C. Với mỗi lực tác dụng đều có một phản lực trực đối.
D. Khi hợp lực cuả các lực tác dụng lên một vật bằng 0 thì vật không thể chuyển động đượC.
Câu 32. Một vật chiụ tác dụng đồng thời của 3 lực
1
F
,
2
F
,
3
F
thì có gia tốc a cùng phương
và cùng chiều với:
A.
1
F
B.
2
F
C.
3
F
D. Hợp lực của
1
F
,
2
F
và
3
F
Câu 33. Khi một vật chịu tác dụng của một vật khác thì nó sẽ:
A. Biến dạng hoặc thay đổi vận tốc (cả hướng và độ lớn).
B. Chỉ biến dạng.
C. Chuyển động dần đều.
D. Chuyển động chậm dần đều.
Câu 34. Trong số các câu phát biểu sau, câu nào đúng ?
A. Nếu không còn lực nào tác dụng vào vật đang chuyển động thì vật sẽ lập tức dừng lại.
B. Vận tốc của vật thay đổi khi có lực tác dụng vào nó.
C. Một vật không thể chuyển động mãi mãi mà không có lực nào tác dụng vào nó.
D. Vật luôn luôn chuyển động theo hướng của lực tác dụng vào nó.
Câu 35. Công thức F = m.∆v/∆t được phát biểu đúng trong trường hợp nào sau đây:
A. Lực tác dụng vào vật tỉ lệ với khối lượng.
B. Lực tác dụng vào vật tỉ lệ với khối lượng, tỉ lệ với độ biến thiên vận tốc và tỉ lệ nghịch với
khoảng thời gian xẩy ra độ biến thiên đó.
C. Lực tác dụng vào vật tỉ lệ với gia tốc và cùng hướng với gia tốC.
D. Lực tác dụng vào vật là đại lượng được xác định bằng tích của khối lượng và gia tốc của vật.
Câu 36. Thẹo định luật III Newton ta có:
A. F
12
= - F
21
.
B. Lực và phản lực cùng bản chất, cùng xuất hiện và đồng thời mất đi.
C. Lực và phản lực cùng phương, ngược chiều, cùng độ lớn và cùng điểm đặt.
D. Lực và phản lực không thể cân bằng nhau, vì chúng đặt vào hai vật khác nhau.
Câu 37. Định luật II Newton xác nhận rằng:
A. Gia tốc của một vật tỉ lệ với lực tác dụng vào vật và tỉ lệ nghịch với khối lượng của vật.
B. Khi chịu tác dụng của một lực không đổi thì vật chuyển động với vận tốc không đổi.
C. Khi lực tác dụng lên vật bằng 0 thì vật chuyển động thẳng đều do quán tính.
D. Khi một vật chịu tác dụng của một vật khác thì nó cũng tác dụng lên vật khác một phản lực
trực đối.
Câu 38. Định luật III Newton luôn luôn có thể dùng để:
A. Xác định lực mà một vật hút trái đất tại một nơi căn cứ vào số chỉ của lực kế đang treo vật
tại nơi đó.
B. Xác định rằng lực và phản lực tác dụng lên cùng một vật là hai lực cân bằng nhau.
C. Xác định lực tương tác giữa hai vật khi va chạm vào nhau căn cứ vào khối lượng và gia tốc
của một trong hai vật đó.
D. Xác định phản lực của giá đỡ hay dây treo khi biết trọng lực tác dụng vào vật đó.
Câu 42. Theo các định luật Newton thì:
A. Vật bắt buộc phải chuyển động theo hướng của lực tác dụng vào nó.
B. Nếu không còn lực nào tác dụng vào vật đang chuyển động thì vật bắt buộc phải dừng lại.
C. Khi vật thay đổi vận tốc thì bắt buộc phải có lực tác dụng vào nó.
D. Một vật không thể liên tục chuyển động mãi mãi nếu không có lực tác dụng vào nó.
Câu 47. Chọn phương án đúng trong các câu sau:
A. Lực là nguyên nhân duy trì chuyển động của một vật
B. Lực là nguyên nhân làm biến đổi chuyển động của một vật
C. Khi không chịu lực nào tác dụng, mọi vật sẽ phải đứng yên
D. Các câu A, B và C đều SAI
Câu 10. Dưới tác dụng của một lực
F
, vật có khối lượng m
1
thu gia tốc 20cm/s
2
. Nếu lực
F
tác dụng vào vật có khối lượng m
2
= 2m
1
thì vật m
2
sẽ thu gia tốc:
A. 0,1m/s
2
B. 0,4m/s
2
C. 1cm/s
2
D. 4cm/s
2
Câu 11. Dưới tác dụng của một lực
F
, một vật đang đứng yên sẽ chuyển động không ma sát
trên đường nằmg ngang với gia tốc 1m/s
2
. Sau 2s lực
F
thôi tác dụng. Vật sẽ:
A. Dừng lại ngay
B. Chuyển động chậm dần đều với vận tốc đầu 2m/s
C. Chuyển động thẳng đều với vận tốc 2m/s
D. Chuyển động thẳng nhanh dần đều với vận tốc đầu 2m/s
Câu 13. Dưới tác dụng của một lực
F
, vật m
1
sẽ thu gia tốc 0,1m/s
2
. Nếu ghép thêm một vật
m
2
bằng m
1
thì vật ghép sẽ thu gia tốc 0,06m/s
2
. Dưới tác dụng của lực
F
trên, vật m
2
sẽ thu
gia tốc:
A. 0,16m/s
2
B. 0,04m/s
2
C. 0,15m/s
2
D. Một đáp án khác
Câu 14. Một vật có khối lượng 0,4kg sẽ chuyển động thẳng nhanh dần đều trên đường ngang
với gia tốc3m/s
2
khi không có lực cản. Nếu lực cản là 0,2N để vật vẫn chuyển động với gia tốc
trên thì lực tác động theo hương chuyển động phải có độ lớn là:
A. 1N
B. 0,8N
C. 1,4N
D. 1,6N
CHƯƠNG IV
Câu 1. Điều nào sau đây đúng khi nói về lực vạn vật hấp dẫn:
A. Lực hấp dẫn tỉ lệ nghịch với khoảng cách giữa hai vật
B. Lực hấp dẫn có nguồn gốc ở khối lượng của các vật
C. Trọng lực là một trường hợp riêng của lực hấp dẫn
D. Cả b và c đúng
Câu 2. Chọn phương án SAI trong các câu sau:
A. Trọng lực có phương thẳng đứng, có chiều từ trên xuống
B. Điểm đặt của trọng lực tại trọng tâm của vật
C. Trọng lượng của vật bằng trọng lực tác dụng lên vật khi vật đứng yên hoặc chuyển động
thẳng đều đối với Trái đất
D. Nguyên tắc cân là so sánh trực tiếp khối lượng của vật cần đo với khối lượng chuẩn.
Câu 3. Chọn phương án đúng trong các câu sau khi so sánh trọng lượng và khối lượng:
A. Trọng lượng là đại lượng đo được, còn khối lượng thì không đo được
B. Trọng lượng không phụ thuộc độ cao, còn khối lượng phụ thuộc độ cao
C. Trọng lượng là đại lượng hữu hướng, còn khối lượng là đại lượng vô hướng
D. Trọng lượng không phụ thuộc vĩ độ, còn khối lượng phụ thuộc vĩ độ
Câu 4. Chọn phương án SAI trong các câu sau:
A. Gia tốc trọng trường có hướng trùng với hướng của trọng lực
B. Ở một nơi gần mặt đất, gia tốc rơi tự do của mọi vật là như nhau
C. Từ công thức P = mg ⇒
m
P
g
=
nên ta thấy gia tốc tỉ lệ nghịch với khối lượng
D. Trong tự nhiên, mọi vật đều hút nhau với một lực có nguồn gốc ở khối lượng của vật
Câu 5. Chọn phương án đúng trong các câu sau:
A. Khi vượt giới hạn đàn hồi, lực đàn hồi tỉ lệ với độ biến dạng của vật đàn hồi
B. Độ cứng của vật đàn hồi giảm khi kích thước của vật đàn hồi giảm
C. Lực đàn hồi xuất hiện khi vật bị biến dạng
D. Cả A, B và C đều đúng
Câu 6. Trong các yếu tố sau đây:
I. Độ biến dạng của vật II. Kích thước của vật
III. Khối lượng của vật IV. Bản chất của vật
Lực đàn hồi phụ thuộc các yếu tố:
A. I, II, III. B. II, III, IV. C. I, III, IV. D. I, II, IV.
Câu 7. Chọn phương án đúng trong các câu sau:
A. Lực ma sát trượt có độ lớn tỉ lệ với áp lực N và phụ thuôc diện tích tiếp xúc
B. Lực ma sát trượt có độ lớn thường lớn hơn áp lực N
C. Lực ma sát trượt luôn xuất hiện ở mặt tiếp xúc và cùng hướng với hướng chuyển động của
vật
D. Cả A, B và C đều SAI
Câu 8. Chọn phương án đúng trong các câu sau:
A. Ma sát lăn nói chung là có lợi vì hệ số ma sát lăn nhỏ
B. Trong nhiều trường hợp, lực ma sát nghỉ đóng vai trò là lực phát động
C. Khi các vật đứng yên, ở mặt tiếp xúc luôn xuất hiện lực ma sát nghỉ
D. Cả A, B và C đều đúng
Câu 9. Chọn phương án SAI trong các câu sau:
A. Dựa vào đặc điểm của lực đàn hồi (tỉ lệ với độ biến dạng của vật đàn hồi), người ta chế tạo
ra lực kế
B. Lực ma sát nghỉ tỉ lệ với áp lực N
C. Dựa cào đặc điểm của trọng lực (tỉ lệ với khối lượng của vật), người ta chế tạo cân để đo
khối lượng
D. Một trong những đặc điểm chung của lực ma sát là xuất hiện từng cặp lực trực đối đặt vào
hai vật tiếp xúc
Câu 10. Chọn phương án SAI trong các câu sau:
A. Hệ số ma sát lăn nhỏ hơn hệ số ma sát trượt hàng chục lần
B. Cũng như lực ma sát nghỉ, lực ma sát lăn phụ thuộc áp lực N
C. Ma sát có lợi hay có hai tuy từng trường hợp cụ thể
D. Ma sát lăn nói chung là có hại và phải tìm cách giảm tới mức tối đa
Câu 11. Một vật được ném thẳng đứng lên cao. Ở điểm cao nhất của quỹ đạo, vật đó:
A. Ở trạng thái cân bằng tức thời C. Cả a và b đều đúng
B. Ở trạng thái đứng yên tức thời D. Cả a và b đều SAI
Câu 12. Một vật trượt trên mặt phẳng ngang với vận tốc ban đầu là v theo chiều dương. Nếu hệ
số ma sát giữa vật và mặt phẳng ngang là k thì gia tốc của vật là:
A. a = -km C. a = -kmg
B. a = -kg D. a = -g/k
Câu 13. Lực cần để giữ cho một vật chuyền động với vận tốc không đổi là:
A. Bằng 0 C. Tỷ lệ với trọng lượng của vật
B. Tỷ lệ với khối lượng của vật D. Tỷ lệ với vận tốc của vật.
Câu 14. Một vật chuyển động với vận tốc không đổi. Hợp lực F tác dụng lên vật:
A. F = v
2
/2m C. F = mg
B. F = mv D. F = 0
Câu 39. Một vật được treo vào đầu dưới của lò xo khối lượng đáng kể so với khối lượng của
vật. Treo đầu trên của lò xo có đeo vật vào giá đỡ, để lò xo giãn ra cho đến khi đứng yên.
Những cặp lực nào sau đây được coi là lực và phản lực của nhau ?
A. Lực đàn hồi do lò xo tác dụng vào vật và lực do vật tác dụng vào lò xo.
B. Lực do Trái đất hút vật và lực do vật và lò xo tác dụng lên giá đỡ.
C. Lực do Trái đất tác dụng vào vật và lực đàn hồi do lò xo tác dụng vào vật.
D. Lực do vật kéo dãn lò xo và trọng lực tác dụng vào vật đó.
Câu 40. Tính lực tối thiểu cần ép một khối thuỷ tinh khối lượng m = 50g theo phương nằm
ngang để giữ cho nó nằm yên sát với bề mặt của bức tường thằng đứng bằng đá hoA. Biết hệ số
ma sát nghỉ cực đại giữa thuỷ tinh và đá hoa là k = 0,2.
A. 0,42N B. 2,45N C. 0,41N D. 24,5N
Câu 41. Lấy tay ép quyển sách vào tường, khi sách đứng yên, nó chịu tác dụng của:
A. 5 lực, trong đó có 1 lực ma sát nghỉ
B. 5 lực, trong đó có 2 lực ma sát nghỉ
C. 6 lực, trong đó có 1 lực ma sát nghỉ
D. 6 lực, trong đó có 2 lực ma sát nghỉ
Câu 43. Một vật có trọng lượng 20N đứng yên trên mặt phẳng nằm ngang. Một sợi dây được
gắn vào vật. Hệ số ma sát nghỉ giữa vật và mặt phẳng là 0,9. Sợi dây kéo theo phương ngang
với một lực là 16N:
A. Lực ma sát tác dụng lên vật là 20N
B. Lực ma sát tác dụng lên vật là 16N
C. Lực ma sát tác dụng lên vật là 4N
D. Lực ma sát không thể xác định được
Câu 44. Một vật chuyển động với vận tốc không đổi. Hợp lực F tác dụng lên vật:
A. F = v
2
/2m B. F = mg C. F = mv D. F = 0
Câu 45. Một chất điểm chuyển động tròn đều khi vectơ vận tốc v:
A. Không đổi B. Thay đổi về phương, chiều và độ lớn
C. Không đổi về phương D. Các câu a, b và c đều sai
Câu 46. Một vật chịu tác dụng của lực F và có gia tốcA. Phát biểu nào sau đây là SAI ?
A. a = 0 nếu F = 0 B. v = 0 nếu F = 0
C. a không đổi nếu F không đổi D. a cùng phương, cùng chiều và tỉ lệ với F
Câu 48. Một người đứng yên trên mặt đất nằm ngang. Lực của mặt đất tác dụng lên người
thuộc loại lực gì ?
A. Trọng lực B.Lực ma sát nghỉ C. Lực đàn hồi D. a, b, c, đều
SAI
Câu 46. Treo một vật có khối lượng 100g vào một lò xo thẳng đứng. Khi vật ở vị trí cân bằng
thì lò xo bị biến dạng 2cm. Độ cứng của lò xo là:
A. 50N/m B. 50N/cm
C. 500N/m D. 50N/cm
Câu 46. Gia tốc rơi tự do ở độ cao h chênh lệch với gia tốc rơi tự do trên mặt đất 16 lần. Xem
Trái đất là khối cầu đồng chất và có bán kính là R. Độ cao h là:
A. 3R/4 B. 15R
C. 3R D. Một giá trị khác
Câu 46. Có 5 tấm tôn xếp chồng lên nhau, trọng lượng mỗi tấm là 150N và hệ số ma sát giữa
các tấm là 0,3. Cần một lực nhỏ nhất là bao nhiêu để kéo 3 tấm trên.
A. 225N B. 125N
C. 135N D. Một giá trị khác
Câu 46. Một lò xo có độ cứng 100N/m. Nếu cắt lò xo ra làm 4 phần giống nhau thì độ cứng của
mỗi lò xo là:
A. 400N/m B. 25N/m
C. 250N/m D. 40N/m
Thứ Sáu, 28 tháng 2, 2014
bai dịch đia vật lý ứng dụng tiếng việt
G#9+/J +!0#*P,H !:9+5G/*e!02w
#*P*lE# +P%#1%U9#14RRR#*P IE%G,
~!59RTP#TEI0F#*P IE# +P%,
H IE# +P%l1:!*F'J ( <Ts65G*e
4,H ! :RI5#*P*,YF#*P*:R5GT
*+,
>H I2G $&A0# 45G,H :9+D[!GJI
9+TP#T 8420C$!9%O,H !A @:G
R5G I#1*'9RqE:G# +TP#;mP5#E!3
G#C= IJ <,Y'"FA+= ) 2F!3 B
0*s+=+ :9RI#=+,Y'/:RAO=+6:'G:G# +
#TP#*+D !+!1#+0@,H0# 0#@J%x%G
%G+!%U I+K#19L28+5*e28)'4
I#1E 0JEG'(+G#+!+ I%+7+E:M,32
=9m2B<#V1#*P2B#1[#1V;A+9
=<9R+<#:'##1C*s+D#!02w*#*P I4T0,H !
28V!#1C*s+D _ 2F+DL9$G!
4 85C+DM,H + _ 9+#1*Sw+
4J0J6A+1
RE#(+ /A+*+D IV,
?*P*T4:Rq5G" +2B=<*#1[=+
$A++!3@1 +,5GT +$%O@+ 0#@*BA+#11:!
*E I4L5eB(+:+%+#* )+:+MV2+ I#1U
!50G# +:R5#1 )+P!4,!3#11:!*'P!5G
*s%O $:+! 0#1%!:+ I4#1E=++1
+5G2K)#1
l#[:,•@4!4(+4%UA+1:!*E"4
%4 I2F4$;J2'A++4L#V+!4rPT P*32[M*+
5#@ I*4!4%UA+1:!*D*+59+5G%G
#12F !:!':9RJK4A+3G#+4,HR
<9+*e P!1:!*@GK $A+1:!*E",
>H I#34A0# 45G!#*P*:RS7,.#*P*+5K#194
E,H4IS%:I
€
$28@TI21$T09
+!I=$l2"%='L2+!F#4<VA+
+!*+*M5G:R#J,%!#1*%PP #+P*!/ !7
L/k2*5%k7M,?1@ <+!*+*#+0#1E*+:1
75#1*K4LP!7+2<@w4M!E +!*+*
5:R2!#K*+09+!,HR%I*+5U0G
kJk#*P45G,HR++R(+ + 2<0
C*+5"#1s+#*P I#1:!6#[2IA++!1 I#[
%U,
.9+5G'JR*\*•EI9+5G*s%O*G2'A+
9+!9R2'=<:!9+I#""#1
s+%"+L!39@#1s+%A+#1EA+*"+ !)(+s+*D
*s%O !7M,HV+21Ts65G0'7G21B4
9+!R ',?3%K&U:R5#2! 87*$T
:R!02w#*P*#1 B0!,
H !#/<#9+!02w#*P*#1@ <+!*+*m!%K28#
!328+m9+ 8:'(#3%K @ :R9,!
424V:!9Rk+Jk#1#*P9+II##16k?k0+!15*e
)B9+:9R'G/67+!2F5$B!2FE5
+!1,
z# I#14#*P%!7R:9+4 859G"###*P* I2F
5G!4#1#R<%3!4 8A+:}J%:I
€
S:R
$B:)#/@,
>?1A0#" +#*P*:R5 _ 'F,Y'21 I#1!3+
ETP#F!9RS#=<6##E'G!02w#*P,Y'#1
!=EF!@:9RJ S#*P IEF!,
>?3%K9R+B"I(+'#*P*:R#3%K*+D'2'
#*P*59+I6 8*+D'2'l%U%U !#11:!*5
G#+0#*P*T4:R5,HA0#D2'4+D !#R<"#l%U
'%UJT' +,H+2'G@ <2E:Iq5G
"#*P*%:R,
%&9+'#11!J#*P*m=@#4A+#1
1:!*5#1#*PIO*T0@V I1:!*:#*P5G
+!3"J!3+,
>?1#*PIOA++L$%O:#11 +4-y#**#@:M!4#1
*:2@A+*So,n$%O#11:!*5G*s+=+9
=##2G !::L32#1qM5G:R*s+=+F*"
* P+#P ,!3#11:!*45G*s%O#11+! I#1#$! !::
5G*s%O#1J:+1+!!3#1%=::+!3+,H4=:2
I _ lCE,
>?1F@A+#*PIO#qI _ lCE
<,Y;#-icafghIo"Uw#1 !L!3#1G1IA+
P!!P I4MI*T4#1# ) IE,
HIo5GE*s+D!*9!n2 !*P*K1!Ts6%O,H4
I:R+qF6(fgh#1*DV6%!$#KA+
#1*$I#1S+!P,H4=JT57+EA+D
G:+!3lR:+5"%,
S4I#1*/#1S+! I#121J/#1
# I=:,Y5:R$TG=!kKkG#/S
#1+,
>.9R(+#*P* _ %!*:2A+"Jl#11:!*:,"#1
4D2'1 +:+*s%OF:+!31*"F:+
P!!P*:+!31*"#+́%!̀̀#R
‚
@́ ƒ
‚
:+%OO:+!321/"#
:+Ts6:+,
<-)B9+(A+@(+,
<-
.!*0%!+!0:'' !1*A+TT0:R2+!F#=1T
+ !@GA+ 4,
YF !<#/+#1#:R:$*9w,f+:G2)9:R%+
7+5*J# x !+5+:$m;,f+59R(+*T<5
*e0#1#+́%!̀̀#R
‚
@́ ƒ
‚
ELT-M,Y$ T5
P!*+2BF#+%!2#3LZM !<#/+F:!b#*"<J#+L5I
4IM+ +*+:d#*,|+!09+B 8T2J B028
#1T0!#A!0,H'*+5#1!#+%!2#3# !
@V1*"* P+#P -a#,„
]$%+7+0E!RO"#,
.+++*21/ !RO!02wE*+!45B:G ITL`M,f+5
2EG+!0 !( <Ts6 P*+P*T!02w2!25T!
5+LaM,.K+2'G:R+#}o#/%O<#/+!4T:'
(B41R*"0%L…b†…c†@VM,t_ *O1A+T
K+!0 +mJ#$':R5*55:RG :wl 4,
<Z!4K#1 <!#1F:+,?3%K:R5#1*+D !*"
FL!324V<:MTK::+,
<Z
t_ 1 +2)+F#+0#1#*P$A+"JW
* ! *+D 4#5E5G#1*!
A+",<]
<]
l5+<%0T0'2'l<-<Z!2'I#+@l
F:,Y'9+I#=BA++D1*"%OO:+Ts6
:+9+*e5#10# 1@A+:'(<%0T,X;#*P* 4
,
.5#1*@'J !5!0<#*P,•@'JEIS
4JE/+5)<##1*S+@!#[DGA+%=
I(+'#1DGLE"4M4#+#:!,5G65
(:9R/ I4%=E+!2<,HJJ"#1
!=6%!RR/E+!2<,
.9+5G'#1!*!S+28<!9+!R
'B#V1T02''!3! 0L57+#1*@%4A+
B:"#+:R52'VA+#w"x I!3%"M,f+5+/A+
9R+/E+!2<9R$!* 2<A+#*P*s%O
S,Y#/:9R*s%O( 8#1*S$#;+,
•@V+I(+''%=qG:R+,X#J9R5G
+/G:G# +TP#2;Rq5G282E0"
:R#1EE'A+@,A+9RS@EG!24V
<DT0F0 I%=T'FI+%!5G4%O#1
+!0SG#+0EG:R+,"@:R:#'9+C
=%=T'FI+:R/4Ts6%O'+!0+!0
G!3E+!0G,
n9RJ4 IS!3*+!2<
#*P* BIw@,Y'/&U(+ /L!04 9#RM9R0
$S#*P 2<A+#*P*(+* I
T0 0,Y5&(+ /G# I*T0 02B<2;R I1 +
:+&U:+=:V*T42B*+5$:+
:R5G21"!",<`
<`
<a)B9+=%O !<`S I2:GL#4M
<a
*:R#*P=+T:R+:+ !<a9R5G<4l
2'GG#5:R5T0( 0'2;RwE*4,
.'JV2+I(+''4E5K#12;R#1E=+*:R
+,‡G#A+*S#*P2" BI 4w#+0#1*SEA
A+4/L:G IMS@9+5G*5kK#1k
+/ IE:+,Y=244I2;RKA+4E5G
:R@*!F44E:2*!B1"2;R
w4,~!5@#1:}J#4
:S#S%O!4 95V (wG2A!02B#*P*U024:j
@'J:,
H !'4#*P5I",Y'4 99+5T#=<
5G#19*7k+JkEU0,.5e9+5#1:#,
f+59+E<#GI#'7E(+"#@,H !<
:R24GTs641 + I$;#1
L!3$4U+M7:}J,.$#V2B*R%
I5GJ2F'*@=+,H I'*#V1I# /A+
#*P*5G*s%O#12A+*G3 !%=,
.9R(+@;SA+#*P* IE%G,z6EIA+9R _ S5G
4F#*P IE# +P%9+q5 IE%G,Y2"9R
I##1!0#!!A+#*P3 2B#1#V1#*P#;*:2
A+9 I+E,"!0#*P*+54=+%U4R)#%9%U,
n:%GC9J$5%U95$
T%U4R##*P*,H l:9R56%!G%G%!59+4
J/ I9"w=<9+#<G/ I4R,
.5+/G/E%# +P%K1!1V0+4,.9+5G5#)
K/*+,
EI'+4:R2'V9R:ˆ 89R#/E
# +P%, 4A+#*P*%,f+59R%GFF#V
5FlE# +P%,
HV+B41 +V0+49R'OJE# +P%9R*s
%OE%G%&/OG9R*s%OE%G# _*F0A+
=[E#GT# $A+/*+:GDA+2FF#V,
HV2+ !: 4V0!3%99R21#E%#1#<,
.9R*s%OE# +P%SG:G# +#(+%U%!5GT# 8#*P*
IE%J(A+%G,.9R/E%P!R
I9,.9Rq/E%2< I=4R@9
wL$%O I<R P*+M != 4I:R5#*P*%,f+5
9+('4R I+@#*P*%J4,Y'#(+"
J=%U4R$4TJJ'+%!5!G'
I9,YG(+**s%O + I4
R9R5+4G('+Ge I2FG('@G"##9,
.5e5*e9205#1$%O 9+,<b<c#/+%5G#!*:
2=+#1[:R#1*T4,
<b
z6 8q!:!f•ac IE# +P%*eT+%!v%:w2&[,
<c
f%%G2&:!ZyFG#I9":! !*@F%m%U
<d,
<d
.!#14RGG2&%C5G:RT+@%@f•ac !
<b<c,•'kG#k I%U4R:!%f•]c,#/+
28F !<iL*24A+Zm~%GG*s+G I#14RM,
<i
Y=<#/+!9+#1E9!43 +B I,.9R:R*s
%O+' I<RS5*+DA+/59R
210 I#19%U"##2'G !+%/P!4R/L
9R5GM*$4#1PT4TS%U9'P!,f+5 e:R
! $'A+%U4R%2B*W !<b<c"*e:!f•]c,
G#+5#1!A+:!,H !<b<c:R5
<[5G<4 _ I+E%# +P%,H ! :#1*$
;J%L#1[w#w#4+@A+2I1M5G<4 I+E@
*s%OG4!#1! ':!,
G#@'9+$!:!$!+*+#12Im%G I
4R9+5G#l#1 !+E%!3# +P%28*s%O
@ <T4 !OO,
H4I;#*5E''5V0+4L[*+$%OMP!4R!3'9
+D _ I%U9!3'=%U:R@V:3eG94R
,H !#1< 0I# /9R%O#1'J!!$!
#1 $#+#!4%UL!3$4!=:R:G I9M,
<-y#/+( <T"%#1+'ˆVA+*kG#kI2#3,
<-y
< + +*@F4 9+# +P%!#1#344#W;#%UG:R
#*P*,
<
<-Z!4=<T +'9+#/lE%GLGD*+*"MW
#*P
k~+kT4 I2F09+!,
<-Z
<-]GP@$!G%G+G#' I2F+G#P!%_
%"W4%UG!0 l+%U9,
<-]
?[P! :u##1 +*s+DL!3 ! #1 *"*s+DM,f+
5<-`!4#*P*C‰2w2#3"#2"0%9),
<-`
.9+CTP#'9+5G5#)4:'J I#*P*,
-,Y5:RGG#1#*P,nI)#*P*(' :9R
)G,
X'JE5#1#p4I,HR9R*e%O#1:!5
*e4$4+L42+!32M!4 9::$G567+@
#0'#*Pw*!:!+9R+B:R5@J4#
*+4 928##@#1#*P,Y !9R# !7
V 4J##*P*5G@*!5s+@4 ! 9+
('#*P*!3 +:w U@,
Z,?*P*#1[+('9Š0:5:;,H ![(+ /
G5GJ +F!3:GA+#*P*s%OI$*+,
>?*P*%!#*:*TEI,Y28$!9 UL !
#"MT(+#[U3A+W IE# +P%9PI:R,?1 :
:RL#1#*!* PM:#FF !#1U3 !G#'P!G/#1[
!O3A+U,z6B4C<#4#1#*!* PJ9R:RS@
Ek"k[KO3<#:'#
Ln)GMI"A+55G#12" !#1::#%=
!3#*! P+!(+#1[!3*s%O+!# !#1<:RS@5
:R!3#1#(+++D=+FTV0T0,
>H IE%9T(+#1U5G:R:R& :G# +55
I 4wL' '5(#RwM!3$2B*:2 !%09
+!R ',
>?1#*P%!#1[ I2G4 IT094,
>?1#*P%!72*5%IOTEL!0 l5e !K"#M,
>?1#*P%!'F5G*e:*G'F5G*e _ J,
>?1#*P%!%O//E*LF:+#3'22E/M
I:'#1*:2A+"J#1*+D+@:RG#1*
S!!55G4J'4 9!3'4T0/
0:G,
>?1#*P%!% 45G=+#14R#1%U9G#1+@%A+
9,?3%KR:#!5:5:;G"2=+%#*P*#*P*5
=3G#:2$%O*A+#1#*P%RRE I<R
#*P%2'#4'+%UK5%,
],Hl= I9R:'J*+,
>#*P*~+#O$S28+D+@A+ $ I2F!35
G#1*+D5A+#11:!*@:,
>%2*57#*P**s+=+2B#1+7+D@+*Š=++
ˆ#%E:R@$4#1s+%"+l+!1,
>#*P*?S2B#1@7+D+%O!#11 +!21,
>#*P*S28+D+/l#1+!G#G#1#L!30M,
>#*P*"J*E('28'4EG:R+!0 !
:j2;R+I#1@7S+%O!!21
1:!*R:#1*+'4J,
>#*P*%SLG#1T4TSEIM28214RG21%U
9C5B I28+D $T0A+4R! $P!%_
%"W!#1T4TSE@'*s+=+H+5G$!%U4R,
>H ! 5!0 A+%=!0F#*P*5G((I
"A+#[#*P B#1#O 4:5:;,.9R5G:GG#
%4*:2+K#[EA+%U !#1U3,Y'5#1@L !#1
:%=!30#1M@9R
B+'9+5G$!+@VB#/@:*s%O
"!0+:+,#!9R!)4I:9+T+@:w*:G#
*!,HI@&5G4m4L%44M:R5
#*!* P*A+9T(+24:jA+U,
f5+
?1:9RC*s+=+!#*P*9+5G*5+/ IE$,Hl"9+
5 I2;7+#12+#1#A+:!+,
H !+(+3+<@:$2BR%I28++
50# 0#@!32B#1:}JI02*!,Y@#R%
I:R#5#1#<54%&:}J _ T*s+=+
#*P$%O ! A+#1*S2*5%m7E5#1%4A++
+/2+EL<!#M/*s+D#%E*S#*P !!,
Y'*5+28#[ 0'2E@9+5GT*
!!280+/ I#/%4',Y@5 I#1+/A
R#1E4B2*!"*e#1#OI#+/J!
4
-y!3Zy%4',4J:9R%O#1*##9)
9+%4/)) 8GG4$;11A+* '!
2F,
n&UF0"wI:!+#&:!+L5#/%4'-yM!3+
L5#[-y#*M•?3%K4#& !:! 4#& !+5#1*
',.OG'9R*! !+0:!+9R!02w*E
'*%/P!,Y'9R*! !:!9+#*G<#
$#05/(+I9R6 81*:R9
l:9R'EIL5*e#1R2D*:GM,
HP!5B"*+,
>Hl*G2'A+9R%$lR 5l/ G/
09R'J#1#G##4 9G#5G5$@#0L!35
J <%x+4M,
>.9R/:!F#VG4!9R$4+L42+
!32M I5V 4 9G,
>28+9R*!*/0#1:!+4#&A+
+#s+:!/,
>H !"$*+5<A+9+2FK5#1*'G5=
:!+K#194#V1T0,H ! %&G
*5+:RD,HI5#1(+*TI 8#V1*"*)@5V @
$ _ '5G%&9+*s%O:!+RL%!5#1:!
+R*!MB1*"@,
.9+l+J 8':RK4#/,z(+ /GG*
I(+A+64#&GG4;#%U))GG43G#+4
:G!2F )467+R,
n4' 4(+ /(4I,Y4 9 BIw@w@9+5#1#V
1@VA+'*5+,329+))G:G# +oA+*5+
*+#[!0!WE4+ +% =5G+D:$:G:/2
#4!34O@o#,
;
hs2( <9$2F $+Go2!,!01
!!@:$L l'#V1#9+#24:jSKA++G# '
#1EA+*S#*PM,?(+"#%4A+9R@ <"##4
!9R#1*:2%x%=+*f• +AR#G:R!P !,
HAO
HR9+/#1*!3*9+('IE
I,.'!('*+,
>Y<@T0R4V04!4[4 9@ Š,5#1
':G!=EI+:/:R5$@#09+5G'J
T4 9%&[!2'%0wD45G" e +:9+'
+4*"@V0@,
>|#1:#1$R:2)EEE#S:[T:
!EE# _ 9+5G!!G4 9*+S Š5+#R<
!EE#,
>H !:IV+!0 +=" $!r! #P*,
‹!r! #P*q0%!S=+++%0A+VC,
>H4R=")A+* _ 4IO,Y'5
#1 _ k%4k*l#1+!%'*mR+ 1 I!219
R))B+!0E* !%=* !+/R
R 4(+ /,
>Y'9+%!55#12FF#V !59R5EA9+5G
*s%O5m*G2'A+9+:'0!+E:mGIA+#1"
I(+'+4,
n<J:!(' I('!*T0EI2! U9
R2)EG,X#J9R4J+lE 8E4#/V9
R#5G*s+D*+5,
Y#/:9R2)E@ _ /(*V0+4B#V
G,Y57+9R2)E !!04!3T I+
,
?1*R%I2)E=RL5e#[-yy#*MP!%_T(+G5
=<D,Y=:2)E28eS !"!0%x% _
#*P*lE# +P%#1%U9#14RRR#*P IE%G,
~!59RTP#TEI0F#*P IE# +P%,
H IE# +P%l1:!*F'J ( <Ts65G*e
4,H ! :RI5#*P*,YF#*P*:R5GT
*+,
>H I2G $&A0# 45G,H :9+D[!GJI
9+TP#T 8420C$!9%O,H !A @:G
R5G I#1*'9RqE:G# +TP#;mP5#E!3
G#C= IJ <,Y'"FA+= ) 2F!3 B
0*s+=+ :9RI#=+,Y'/:RAO=+6:'G:G# +
#TP#*+D !+!1#+0@,H0# 0#@J%x%G
%G+!%U I+K#19L28+5*e28)'4
I#1E 0JEG'(+G#+!+ I%+7+E:M,32
=9m2B<#V1#*P2B#1[#1V;A+9
=<9R+<#:'##1C*s+D#!02w*#*P I4T0,H !
28V!#1C*s+D _ 2F+DL9$G!
4 85C+DM,H + _ 9+#1*Sw+
4J0J6A+1
RE#(+ /A+*+D IV,
?*P*T4:Rq5G" +2B=<*#1[=+
$A++!3@1 +,5GT +$%O@+ 0#@*BA+#11:!
*E I4L5eB(+:+%+#* )+:+MV2+ I#1U
!50G# +:R5#1 )+P!4,!3#11:!*'P!5G
*s%O $:+! 0#1%!:+ I4#1E=++1
+5G2K)#1
l#[:,•@4!4(+4%UA+1:!*E"4
%4 I2F4$;J2'A++4L#V+!4rPT P*32[M*+
5#@ I*4!4%UA+1:!*D*+59+5G%G
#12F !:!':9RJK4A+3G#+4,HR
<9+*e P!1:!*@GK $A+1:!*E",
>H I#34A0# 45G!#*P*:RS7,.#*P*+5K#194
E,H4IS%:I
€
$28@TI21$T09
+!I=$l2"%='L2+!F#4<VA+
+!*+*M5G:R#J,%!#1*%PP #+P*!/ !7
L/k2*5%k7M,?1@ <+!*+*#+0#1E*+:1
75#1*K4LP!7+2<@w4M!E +!*+*
5:R2!#K*+09+!,HR%I*+5U0G
kJk#*P45G,HR++R(+ + 2<0
C*+5"#1s+#*P I#1:!6#[2IA++!1 I#[
%U,
.9+5G'JR*\*•EI9+5G*s%O*G2'A+
9+!9R2'=<:!9+I#""#1
s+%"+L!39@#1s+%A+#1EA+*"+ !)(+s+*D
*s%O !7M,HV+21Ts65G0'7G21B4
9+!R ',?3%K&U:R5#2! 87*$T
:R!02w#*P*#1 B0!,
H !#/<#9+!02w#*P*#1@ <+!*+*m!%K28#
!328+m9+ 8:'(#3%K @ :R9,!
424V:!9Rk+Jk#1#*P9+II##16k?k0+!15*e
)B9+:9R'G/67+!2F5$B!2FE5
+!1,
z# I#14#*P%!7R:9+4 859G"###*P* I2F
5G!4#1#R<%3!4 8A+:}J%:I
€
S:R
$B:)#/@,
>?1A0#" +#*P*:R5 _ 'F,Y'21 I#1!3+
ETP#F!9RS#=<6##E'G!02w#*P,Y'#1
!=EF!@:9RJ S#*P IEF!,
>?3%K9R+B"I(+'#*P*:R#3%K*+D'2'
#*P*59+I6 8*+D'2'l%U%U !#11:!*5
G#+0#*P*T4:R5,HA0#D2'4+D !#R<"#l%U
'%UJT' +,H+2'G@ <2E:Iq5G
"#*P*%:R,
%&9+'#11!J#*P*m=@#4A+#1
1:!*5#1#*PIO*T0@V I1:!*:#*P5G
+!3"J!3+,
>?1#*PIOA++L$%O:#11 +4-y#**#@:M!4#1
*:2@A+*So,n$%O#11:!*5G*s+=+9
=##2G !::L32#1qM5G:R*s+=+F*"
* P+#P ,!3#11:!*45G*s%O#11+! I#1#$! !::
5G*s%O#1J:+1+!!3#1%=::+!3+,H4=:2
I _ lCE,
>?1F@A+#*PIO#qI _ lCE
<,Y;#-icafghIo"Uw#1 !L!3#1G1IA+
P!!P I4MI*T4#1# ) IE,
HIo5GE*s+D!*9!n2 !*P*K1!Ts6%O,H4
I:R+qF6(fgh#1*DV6%!$#KA+
#1*$I#1S+!P,H4=JT57+EA+D
G:+!3lR:+5"%,
S4I#1*/#1S+! I#121J/#1
# I=:,Y5:R$TG=!kKkG#/S
#1+,
>.9R(+#*P* _ %!*:2A+"Jl#11:!*:,"#1
4D2'1 +:+*s%OF:+!31*"F:+
P!!P*:+!31*"#+́%!̀̀#R
‚
@́ ƒ
‚
:+%OO:+!321/"#
:+Ts6:+,
<-)B9+(A+@(+,
<-
.!*0%!+!0:'' !1*A+TT0:R2+!F#=1T
+ !@GA+ 4,
YF !<#/+#1#:R:$*9w,f+:G2)9:R%+
7+5*J# x !+5+:$m;,f+59R(+*T<5
*e0#1#+́%!̀̀#R
‚
@́ ƒ
‚
ELT-M,Y$ T5
P!*+2BF#+%!2#3LZM !<#/+F:!b#*"<J#+L5I
4IM+ +*+:d#*,|+!09+B 8T2J B028
#1T0!#A!0,H'*+5#1!#+%!2#3# !
@V1*"* P+#P -a#,„
]$%+7+0E!RO"#,
.+++*21/ !RO!02wE*+!45B:G ITL`M,f+5
2EG+!0 !( <Ts6 P*+P*T!02w2!25T!
5+LaM,.K+2'G:R+#}o#/%O<#/+!4T:'
(B41R*"0%L…b†…c†@VM,t_ *O1A+T
K+!0 +mJ#$':R5*55:RG :wl 4,
<Z!4K#1 <!#1F:+,?3%K:R5#1*+D !*"
FL!324V<:MTK::+,
<Z
t_ 1 +2)+F#+0#1#*P$A+"JW
* ! *+D 4#5E5G#1*!
A+",<]
<]
l5+<%0T0'2'l<-<Z!2'I#+@l
F:,Y'9+I#=BA++D1*"%OO:+Ts6
:+9+*e5#10# 1@A+:'(<%0T,X;#*P* 4
,
.5#1*@'J !5!0<#*P,•@'JEIS
4JE/+5)<##1*S+@!#[DGA+%=
I(+'#1DGLE"4M4#+#:!,5G65
(:9R/ I4%=E+!2<,HJJ"#1
!=6%!RR/E+!2<,
.9+5G'#1!*!S+28<!9+!R
'B#V1T02''!3! 0L57+#1*@%4A+
B:"#+:R52'VA+#w"x I!3%"M,f+5+/A+
9R+/E+!2<9R$!* 2<A+#*P*s%O
S,Y#/:9R*s%O( 8#1*S$#;+,
•@V+I(+''%=qG:R+,X#J9R5G
+/G:G# +TP#2;Rq5G282E0"
:R#1EE'A+@,A+9RS@EG!24V
<DT0F0 I%=T'FI+%!5G4%O#1
+!0SG#+0EG:R+,"@:R:#'9+C
=%=T'FI+:R/4Ts6%O'+!0+!0
G!3E+!0G,
n9RJ4 IS!3*+!2<
#*P* BIw@,Y'/&U(+ /L!04 9#RM9R0
$S#*P 2<A+#*P*(+* I
T0 0,Y5&(+ /G# I*T0 02B<2;R I1 +
:+&U:+=:V*T42B*+5$:+
:R5G21"!",<`
<`
<a)B9+=%O !<`S I2:GL#4M
<a
*:R#*P=+T:R+:+ !<a9R5G<4l
2'GG#5:R5T0( 0'2;RwE*4,
.'JV2+I(+''4E5K#12;R#1E=+*:R
+,‡G#A+*S#*P2" BI 4w#+0#1*SEA
A+4/L:G IMS@9+5G*5kK#1k
+/ IE:+,Y=244I2;RKA+4E5G
:R@*!F44E:2*!B1"2;R
w4,~!5@#1:}J#4
:S#S%O!4 95V (wG2A!02B#*P*U024:j
@'J:,
H !'4#*P5I",Y'4 99+5T#=<
5G#19*7k+JkEU0,.5e9+5#1:#,
f+59+E<#GI#'7E(+"#@,H !<
:R24GTs641 + I$;#1
L!3$4U+M7:}J,.$#V2B*R%
I5GJ2F'*@=+,H I'*#V1I# /A+
#*P*5G*s%O#12A+*G3 !%=,
.9R(+@;SA+#*P* IE%G,z6EIA+9R _ S5G
4F#*P IE# +P%9+q5 IE%G,Y2"9R
I##1!0#!!A+#*P3 2B#1#V1#*P#;*:2
A+9 I+E,"!0#*P*+54=+%U4R)#%9%U,
n:%GC9J$5%U95$
T%U4R##*P*,H l:9R56%!G%G%!59+4
J/ I9"w=<9+#<G/ I4R,
.5+/G/E%# +P%K1!1V0+4,.9+5G5#)
K/*+,
EI'+4:R2'V9R:ˆ 89R#/E
# +P%, 4A+#*P*%,f+59R%GFF#V
5FlE# +P%,
HV+B41 +V0+49R'OJE# +P%9R*s
%OE%G%&/OG9R*s%OE%G# _*F0A+
=[E#GT# $A+/*+:GDA+2FF#V,
HV2+ !: 4V0!3%99R21#E%#1#<,
.9R*s%OE# +P%SG:G# +#(+%U%!5GT# 8#*P*
IE%J(A+%G,.9R/E%P!R
I9,.9Rq/E%2< I=4R@9
wL$%O I<R P*+M != 4I:R5#*P*%,f+5
9+('4R I+@#*P*%J4,Y'#(+"
J=%U4R$4TJJ'+%!5!G'
I9,YG(+**s%O + I4
R9R5+4G('+Ge I2FG('@G"##9,
.5e5*e9205#1$%O 9+,<b<c#/+%5G#!*:
2=+#1[:R#1*T4,
<b
z6 8q!:!f•ac IE# +P%*eT+%!v%:w2&[,
<c
f%%G2&:!ZyFG#I9":! !*@F%m%U
<d,
<d
.!#14RGG2&%C5G:RT+@%@f•ac !
<b<c,•'kG#k I%U4R:!%f•]c,#/+
28F !<iL*24A+Zm~%GG*s+G I#14RM,
<i
Y=<#/+!9+#1E9!43 +B I,.9R:R*s
%O+' I<RS5*+DA+/59R
210 I#19%U"##2'G !+%/P!4R/L
9R5GM*$4#1PT4TS%U9'P!,f+5 e:R
! $'A+%U4R%2B*W !<b<c"*e:!f•]c,
G#+5#1!A+:!,H !<b<c:R5
<[5G<4 _ I+E%# +P%,H ! :#1*$
;J%L#1[w#w#4+@A+2I1M5G<4 I+E@
*s%OG4!#1! ':!,
G#@'9+$!:!$!+*+#12Im%G I
4R9+5G#l#1 !+E%!3# +P%28*s%O
@ <T4 !OO,
H4I;#*5E''5V0+4L[*+$%OMP!4R!3'9
+D _ I%U9!3'=%U:R@V:3eG94R
,H !#1< 0I# /9R%O#1'J!!$!
#1 $#+#!4%UL!3$4!=:R:G I9M,
<-y#/+( <T"%#1+'ˆVA+*kG#kI2#3,
<-y
< + +*@F4 9+# +P%!#1#344#W;#%UG:R
#*P*,
<
<-Z!4=<T +'9+#/lE%GLGD*+*"MW
#*P
k~+kT4 I2F09+!,
<-Z
<-]GP@$!G%G+G#' I2F+G#P!%_
%"W4%UG!0 l+%U9,
<-]
?[P! :u##1 +*s+DL!3 ! #1 *"*s+DM,f+
5<-`!4#*P*C‰2w2#3"#2"0%9),
<-`
.9+CTP#'9+5G5#)4:'J I#*P*,
-,Y5:RGG#1#*P,nI)#*P*(' :9R
)G,
X'JE5#1#p4I,HR9R*e%O#1:!5
*e4$4+L42+!32M!4 9::$G567+@
#0'#*Pw*!:!+9R+B:R5@J4#
*+4 928##@#1#*P,Y !9R# !7
V 4J##*P*5G@*!5s+@4 ! 9+
('#*P*!3 +:w U@,
Z,?*P*#1[+('9Š0:5:;,H ![(+ /
G5GJ +F!3:GA+#*P*s%OI$*+,
>?*P*%!#*:*TEI,Y28$!9 UL !
#"MT(+#[U3A+W IE# +P%9PI:R,?1 :
:RL#1#*!* PM:#FF !#1U3 !G#'P!G/#1[
!O3A+U,z6B4C<#4#1#*!* PJ9R:RS@
Ek"k[KO3<#:'#
Ln)GMI"A+55G#12" !#1::#%=
!3#*! P+!(+#1[!3*s%O+!# !#1<:RS@5
:R!3#1#(+++D=+FTV0T0,
>H IE%9T(+#1U5G:R:R& :G# +55
I 4wL' '5(#RwM!3$2B*:2 !%09
+!R ',
>?1#*P%!#1[ I2G4 IT094,
>?1#*P%!72*5%IOTEL!0 l5e !K"#M,
>?1#*P%!'F5G*e:*G'F5G*e _ J,
>?1#*P%!%O//E*LF:+#3'22E/M
I:'#1*:2A+"J#1*+D+@:RG#1*
S!!55G4J'4 9!3'4T0/
0:G,
>?1#*P%!% 45G=+#14R#1%U9G#1+@%A+
9,?3%KR:#!5:5:;G"2=+%#*P*#*P*5
=3G#:2$%O*A+#1#*P%RRE I<R
#*P%2'#4'+%UK5%,
],Hl= I9R:'J*+,
>#*P*~+#O$S28+D+@A+ $ I2F!35
G#1*+D5A+#11:!*@:,
>%2*57#*P**s+=+2B#1+7+D@+*Š=++
ˆ#%E:R@$4#1s+%"+l+!1,
>#*P*?S2B#1@7+D+%O!#11 +!21,
>#*P*S28+D+/l#1+!G#G#1#L!30M,
>#*P*"J*E('28'4EG:R+!0 !
:j2;R+I#1@7S+%O!!21
1:!*R:#1*+'4J,
>#*P*%SLG#1T4TSEIM28214RG21%U
9C5B I28+D $T0A+4R! $P!%_
%"W!#1T4TSE@'*s+=+H+5G$!%U4R,
>H ! 5!0 A+%=!0F#*P*5G((I
"A+#[#*P B#1#O 4:5:;,.9R5G:GG#
%4*:2+K#[EA+%U !#1U3,Y'5#1@L !#1
:%=!30#1M@9R
B+'9+5G$!+@VB#/@:*s%O
"!0+:+,#!9R!)4I:9+T+@:w*:G#
*!,HI@&5G4m4L%44M:R5
#*!* P*A+9T(+24:jA+U,
f5+
?1:9RC*s+=+!#*P*9+5G*5+/ IE$,Hl"9+
5 I2;7+#12+#1#A+:!+,
H !+(+3+<@:$2BR%I28++
50# 0#@!32B#1:}JI02*!,Y@#R%
I:R#5#1#<54%&:}J _ T*s+=+
#*P$%O ! A+#1*S2*5%m7E5#1%4A++
+/2+EL<!#M/*s+D#%E*S#*P !!,
Y'*5+28#[ 0'2E@9+5GT*
!!280+/ I#/%4',Y@5 I#1+/A
R#1E4B2*!"*e#1#OI#+/J!
4
-y!3Zy%4',4J:9R%O#1*##9)
9+%4/)) 8GG4$;11A+* '!
2F,
n&UF0"wI:!+#&:!+L5#/%4'-yM!3+
L5#[-y#*M•?3%K4#& !:! 4#& !+5#1*
',.OG'9R*! !+0:!+9R!02w*E
'*%/P!,Y'9R*! !:!9+#*G<#
$#05/(+I9R6 81*:R9
l:9R'EIL5*e#1R2D*:GM,
HP!5B"*+,
>Hl*G2'A+9R%$lR 5l/ G/
09R'J#1#G##4 9G#5G5$@#0L!35
J <%x+4M,
>.9R/:!F#VG4!9R$4+L42+
!32M I5V 4 9G,
>28+9R*!*/0#1:!+4#&A+
+#s+:!/,
>H !"$*+5<A+9+2FK5#1*'G5=
:!+K#194#V1T0,H ! %&G
*5+:RD,HI5#1(+*TI 8#V1*"*)@5V @
$ _ '5G%&9+*s%O:!+RL%!5#1:!
+R*!MB1*"@,
.9+l+J 8':RK4#/,z(+ /GG*
I(+A+64#&GG4;#%U))GG43G#+4
:G!2F )467+R,
n4' 4(+ /(4I,Y4 9 BIw@w@9+5#1#V
1@VA+'*5+,329+))G:G# +oA+*5+
*+#[!0!WE4+ +% =5G+D:$:G:/2
#4!34O@o#,
;
hs2( <9$2F $+Go2!,!01
!!@:$L l'#V1#9+#24:jSKA++G# '
#1EA+*S#*PM,?(+"#%4A+9R@ <"##4
!9R#1*:2%x%=+*f• +AR#G:R!P !,
HAO
HR9+/#1*!3*9+('IE
I,.'!('*+,
>Y<@T0R4V04!4[4 9@ Š,5#1
':G!=EI+:/:R5$@#09+5G'J
T4 9%&[!2'%0wD45G" e +:9+'
+4*"@V0@,
>|#1:#1$R:2)EEE#S:[T:
!EE# _ 9+5G!!G4 9*+S Š5+#R<
!EE#,
>H !:IV+!0 +=" $!r! #P*,
‹!r! #P*q0%!S=+++%0A+VC,
>H4R=")A+* _ 4IO,Y'5
#1 _ k%4k*l#1+!%'*mR+ 1 I!219
R))B+!0E* !%=* !+/R
R 4(+ /,
>Y'9+%!55#12FF#V !59R5EA9+5G
*s%O5m*G2'A+9+:'0!+E:mGIA+#1"
I(+'+4,
n<J:!(' I('!*T0EI2! U9
R2)EG,X#J9R4J+lE 8E4#/V9
R#5G*s+D*+5,
Y#/:9R2)E@ _ /(*V0+4B#V
G,Y57+9R2)E !!04!3T I+
,
?1*R%I2)E=RL5e#[-yy#*MP!%_T(+G5
=<D,Y=:2)E28eS !"!0%x% _
Quyết định 818/QĐ-BYT năm 2007 ban hành Danh mục hàng hoá nhập khẩu phải kiểm tra về vệ sinh an toàn thực phẩm theo mã số HS do Bộ trưởng Bộ y tế ban hành
BỘ Y TẾ
*****
CỘNG HOÀ XÃ HỘI CHỦ NGHĨA VIỆT NAM
Độc lập - Tự do - Hạnh phúc
*******
Số: 818/QĐ-BYT Hà Nội, ngày 05 tháng 03 năm 2007
QUYẾT ĐỊNH
VỀ VIỆC BAN HÀNH DANH MỤC HÀNG HOÁ NHẬP KHẨU PHẢI KIỂM TRA VỀ VỆ SINH AN TOÀN
THỰC PHẨM THEO MÃ SỐ HS
BỘ TRƯỞNG BỘ Y TẾ
Căn cứ Nghị định số 49/2003/NĐ-CP ngày 15 tháng 5 năm 2003 của Chính phủ “Quy định chức năng,
nhiệm vụ, quyền hạn và cơ cấu tổ chức của Bộ Y tế”;
Căn cứ Pháp lệnh Vệ sinh an toàn thực phẩm số 12/2003/PL-UBTVQH 11 ngày 26 tháng 7 năm 2003;
Căn cứ Nghị định số 163/2004/NĐ-CP ngày 07 tháng 9 năm 2004 của Chính phủ “Quy định chi tiết thi
hành một số điều của Pháp lệnh Vệ sinh an toàn thực phẩm”;
Căn cứ Khoản 2, Điều 8, Nghị định số 12/2006/NĐ-CP ngày 23 tháng 01 năm 2006 của Chính phủ quy
định chi tiết thi hành Luật Thương mại về hoạt động mua bán hàng hoá quốc tế và các hoạt động đại lý
mua, bán, gia công, và quá cảnh hàng hoá với nước ngoài;
Xét đề nghị của Cục trưởng Cục An toàn vệ sinh thực phẩm- Bộ Y tế.
QUYẾT ĐỊNH
Điều 1. Ban hành kèm theo Quyết định này “Danh mục hàng hoá nhập khẩu phải kiểm tra về vệ sinh an
toàn thực phẩm theo mã số HS” bao gồm:
1. Các chế phẩm từ thịt, cá;
2. Mỡ và dầu động vật hoặc thực vật;
3. Sữa và các sản phẩm từ sữa;
4. Đường và các loại kẹo đường;
5. Ca cao và các chế phẩm từ ca cao;
6. Chế phẩm từ ngũ cốc, bột, tinh bột, hoặc sữa; các loại bánh;
7. Cà phê, chè, hạt tiêu;
8. Chế phẩm từ rau, quả;
9. Gia vị;
10. Đồ uống, rượu và giấm;
11. Bao bì và vật dụng chứa đựng thực phẩm;
12. Thực phẩm chức năng và sản phẩm bảo vệ sức khoẻ;
13. Phụ gia thực phẩm.
Điều 2. Quyết định có hiệu lực kể từ ngày ký ban hành.
Điều 3. Trong trường hợp xảy ra tranh chấp liên quan đến mã số HS trong Danh mục ban hành kèm
theo Quyết định này, Cục An toàn vệ sinh thực phẩm (Bộ Y tế) sẽ chủ trì phối hợp với Tổng cục Hải
quan (Bộ Tài chính) xem xét lại để thống nhất và quyết định mã số.
Điều 4. Các ông (bà): Chánh Văn phòng, Chánh Thanh tra, Vụ trưởng Vụ Pháp chế- Bộ Y tế, Cục
trưởng, Cục An toàn vệ sinh thực phẩm trực thuộc Bộ Y tế, Giám đốc sở Y tế các tỉnh, thành phố trực
thuộc Trung ương; thủ trưởng các đơn vị y tế, Thủ trưởng các đơn vị liên quan và tổ chức, cá nhân
trong nước và nước ngoài có hoạt động trong lĩnh vực nhập khẩu thực phẩm vào Việt Nam chịu trách
nhiệm thi hành Quyết định này./.
Nơi nhận:
- Như điều 4;
- Tổng cục Hải quan (để phối hợp thực hiện);
- Bộ trưởng (để b/c);
- Các Thứ trưởng (để biết) ;
KT. BỘ TRƯỞNG
THỨ TRƯỞNG
- Các Bộ, ngành liên quan;
- Các Vụ, Cục liên quan thuộc Bộ Y tế;
- Sở Y tế, TTYTDP các tỉnh, TP trực thuộc TW;
- Y tế Ngành;
- Website BYT;
- Lưu: VT, ATTP.
Trịnh Quân Huấn
DANH MỤC
HÀNG HOÁ NHẬP KHẨU PHẢI KIỂM TRA VỀ VỆ SINH AN OÀN THỰC PHẨM THEO MÃ SỐ HS
(Ban hành kèm theo Quyết định số 818/QĐ-BYT ngày 05 tháng 3 năm 2007 của Bộ trưởng Bộ Y tế)
1.Danh mục
CÁC CHẾ PHẨM TỪ THỊT, CÁ
TT Chương (*) Mã hàng Mô tả hàng hoá
1. 16 1601 Xúc xích và các sản phẩm tương tự làm từ thịt, từ phụ
phẩm dạng thịt sau giết mổ hoặc tiết; các chế phẩm
thực phẩm từ các sản phẩm đó
2. 1602 Thịt, các phụ phẩm dạng thịt sau giết mổ đã chế biến
hoặc bảo quản bao gồm các sản phẩm dạng thịt muối
hoặc đóng hộp
3. 1603 Phần chiết và nước ép từ thịt, cá bao gồm cá loại có
hoặc không có gia vị
4. 1604 Cá đã được chế biến hay bảo quản; trứng cá muối
MỠ VÀ DẦU ĐỘNG VẬT HOẶC THỰC VẬT
TT Chương (*) Mã hàng Mô tả hàng hoá
1. 15 1504 10 10 Dầu gan cá và các phần phân đoạn của chúng dùng làm
thực phẩm
2. 1507 90 10 Dầu đậu tương đã tinh chế dùng làm thực phẩm
3. 1508 90 10 Dầu lạc đã tinh chế dùng làm thực phẩm
4. 1509 90
90
11
19
Dầu ô-liu đã tinh chế dùng làm thực phẩm
5. 1512 19 10 Dầu hạt hướng dương đã tinh chế dùng làm thực phẩm
6. 1514 19
99
10
10
Dầu hạt cải, dầu mù tạt đã tinh chế dùng làm thực phẩm
7. 1515 50 90 Dầu hạt vừng và các phần phân đoạn của dầu hạt vừng
đã tinh chế
8. 1517 10
90
00
20
Margarin
SỮA VÀ CÁC SẢN PHẨM TỪ SỮA
TT Chương (*) Mã hàng Mô tả hàng hoá
1. 04 0401 Sữa và kem chưa cô đặc, chưa pha thêm đường hoặc
chất ngọt khác
2. 0402 Sữa và kem cô đặc hoặc đã pha thêm đường hoặc chất
ngọt khác
3. 0403 Buttermilk (phụ phẩm thu được từ quá trình làm bơ sữa),
sữa đông và kem, sữa chua, kephir và sữa, kem khác đã
lên men hoặc a xít hoá, đã hoặc chưa cô đặc hoặc pha
thêm đường hoặc chất ngọt khác hoặc hương liệu, hoa
quả, quả hạch hoặc ca cao
4. 0405 Bơ và các chất béo khác và các loại dầu chế từ sữa chưa
phết bơ sữa (dairy spreads)
5. 0406 Phơ mát
6. 22 2202 90 10 Sữa tiệt trùng
ĐƯỜNG VÀ CÁC LOẠI KẸO ĐƯỜNG
TT Chương (*) Mã hàng Mô tả hàng hoá
1. 17 1701 Đường mía hoặc đường của cải và đường sucroza tinh
khiết về mặt hoá học ở thể rắn
Đường thô chưa pha thêm hương liệu hoặc chất màu
2. 1701 11 00 Đường mía
3. 1701 12 00 Đường củ cải
4. 1701 91 00 Đã pha thêm hương liệu hoặc chất màu
5. Đường tinh luyện
6. 1701 99 11 Đường trắng
7. 1704 Các loại kẹo đường (kể cả sô-cô-la trắng), không chứa
ca cao
8. 1704 10 00 Kẹo cao su đã hoặc chưa bọc đường
9. 1704 90 10 Kẹo dược phẩm
10. 1704 90 20 Sô cô la trắng
11. 1704 90 90 Các loại kẹo khác
CA CAO VÀ CÁC CHẾ PHẨM TỪ CA CAO
TT Chương (*) Mã hàng Mô tả hàng hoá
1. 18 1803 Bột ca cao nhão đã hoặc chưa khử chất béo
2. 1804 00 00 Bơ ca cao, mỡ và dầu ca cao
3. 1805 00 00 Bột ca cao chưa pha thêm đường hay chất ngọt khác
4. 1806 Sôcôla và chế phẩm thực phẩm khác có chứa ca cao
CHẾ PHẨM TỪ NGŨ CỐC, BỘT, TINH BỘT HOẶC SỮ VÀ CÁC LOẠI BÁNH
TT Chương (*) Mã hàng Mô tả hàng hoá
1. 19 1901 Thực phẩm chế biến từ ngũ cốc dưới dạng tấm, bột thô,
tinh bột hoặc chiết xuất từ mall
2. 1902 Các sản phẩm bột nhào (pasta) đã hoặc chưa làm chín
hoặc nhồi (thịt hoặc các chất khác) hay chế biến cách
khác như spaghety, macaroni, mì sợi, mì dẹt, gnocchi,
ravioli, cannelloni, cut-cut (couscous), đã hoặc chưa chế
biến
3. 1904 Thức ăn chế biến từ quá trình nổ hoặc rang ngũ cốc hoặc
từ các sản phẩm ngũ cốc (ví dụ: mảnh ngô chế biến từ
bột ngô); ngũ cốc (trừ ngô) ở dạng hạt, mảnh hoặc hạt đã
lềm thành dạng khác (trừ bột, tấm và bột thô), đã làm chín
sơ hoặc chế biến cách khác
4. 1905 Bánh mì, bánh ngọt, bánh quy và các loại bánh khác, có
hoặc không chứa ca cao; bánh thành, bánh quế, bánh đa
nem và các sản phẩm tương tự (bao gổm các loại snack)
5. 20 2005 20 10 Khoai tây chiên các loại
CÀ PHÊ, CHÈ, HẠT TIÊU
TT Chương (*) Mã hàng Mô tả hàng hoá
1. 09 0901 Các loại cà phê đã rang dạng hạt, bột đã khử hoặc chưa
khử cafein
2. 09 0902 10
10
20
20
10
90
10
90
Chè xanh các loại
3. 0902 30
30
40
40
10
90
10
90
Chè đen nguyên cánh hoặc được chế biến dưới dạng chè
nhúng
4. 0904 Hạt tiêu
5. 0904 11 Chưa xay hoặc nghiền
6. 0904 12 Đã xay hoặc nghiền
7. 21 2101 11 10 Cà phê tan
CHẾ PHẨM TỪ RAU, QUẢ
TT Chương (*) Mã hàng Mô tả hàng hoá
1. 20 2001
2002
2003
2005
Rau, quả, vỏ quả, các phần khác của cây đã chế biến hoặc
bảo quản bằng giấm hay axit axetic hoặc bảo quản bằng
cách khác bao gồm cả rau, quả muối
2. 2006 Rau, quả, vỏ quả, các phần khác của cây đã qua chế biến,
có hoặc không tẩm đường, ngâm trong nước đường hoặc
bọc đường hoặc tẩm các phụ gia thực phẩm khác
3. 2007 Mứt, nước quả nấu đông (thạch), mứt từ quả thuộc chi cam
quýt, quả hoặc quả hạch nghiền sệt, quả hoặc quả hạch
nghiền cô đặc, thu được từ quá trình đun nấu đã hoặc chưa
pha thêm đường hay chất ngọt khác
4. 2008 Quả, quả hạch và các phần khác ăn được của cây đã chế
biến, pha thêm đường hay chất ngọt khác hoặc rượu
GIA VỊ
TT Chương (*) Mã hàng Mô tả hàng hoá
1. 21 2103 Nước xốt và các chế phẩm làm nước xốt
2. 2103 Đồ gia vị hỗn hợp và bột canh hỗn hợp; bột mịn và bột thô
từ hạt tù tạt và mù tạt đã chế biến, các loại nước tương,
nước mắm
3. 2104 Súp, nước xuýt và chế phẩm để làm súp, nước xuýt; chế
phẩm thực phẩm tổng hợp đồng nhất
ĐỒ UỐNG, RƯỢU VÀ GIẤM
TT Chương (*) Mã hàng Mô tả hàng hoá
1. 20 2009 Nước quả ép (kể cả hèm nho) và nước rau ép, chưa lên
men và chưa pha rượu, đã hoặc chưa pha thêm đường hay
chất ngọt khác
2. 22 2201 10 00 Nước, kể cả nước khoáng tự nhiên hoặc nhân tạo và nước
có ga, chưa pha thêm đường hoặc chất ngọt khác hay
hương liệu
3. 2202 10 Nước, kể cả nước khoáng và nước có ga, đã pha thêm
đường hoặc chất ngọt khác hay hương liệu và đồ uống
không chứa cồn khác
4. 2202 90 20 Sữa đậu nành
5. 2202 90 30
90
Đồ uống không có ga dùng ngay được không cần pha loãng
và các đồ uống không chứa cồn khác (trừ nước quả ép)
6. 2203 Bia sản xuất từ malt
7. 2204
2205
2206
Rượu có độ cồn thấp bao gồm rượu vang hoa quả và rượu
vang hoa quả có chứa CO
2
8. 2208 30
60
90
Rượu trắng (Đồ uống có cồn được trưng cất từ dịch lên men
nguồn gốc tinh bột, đường, hoặc pha chế từ cồn thực phẩm
và nước)
9. 2208 20
40
70
Rượu mùi (Sản phẩm pha chế từ cồn thực phẩm với nước,
có thể bổ xung thêm đường, dịch chiết từ trái cây và phụ gia
thực phẩm)
10. 2209 Giấm và chất thay thế giấm làm từ axit axetic
BAO BÌ VÀ VẬT DỤNG CHỨA ĐỰNG THỰC PHẨM
TT Chương (*) Mã hàng Mô tả hàng hoá
1. 39 3923 Dụng cụ chứa đựng thực phẩm bằng Plastic
2. 10 90 Hộp chứa đựng thực phẩm
3. 21
29
90
90
Bao, túi chứa đựng thực phẩm (PET, PVC, PE)
4. 30 90 Bình, chai, lọ, các SP tương tự
5. 50 90 Nút, nắp, mũ, van, nắp đậy tương tự
6. 90 00 Thùng chứa, bể chứa, ống dẫn thực phẩm, các SP tương tự
7. 3924 10 00 Bộ đồ ăn, bộ đồ dùng nhà bếp bằng plastic
8. 40 4014 Cao su và các sản phẩm bằng cao su
9. 90 10 Núm vú của chai cho trẻ em ăn và các loại tương tự
10. 90 20 Vú cao su (cho trẻ em)
11. Vật dụng chứa đựng thực phẩm bằng gốm sứ
12. 48 4819 50 00 Bao bì chứa đựng TP bằng giấy, có lớp tiếp xúc trong cùng
là chất liệu khác (trừ xenlulo)
13. 69 6911 10 00 Bộ đồ ăn, đồ nhà bếp bằng sứ
14. 6912 00 00 Bộ đồ ăn, đồ nhà bếp bằng gốm
15. Vật dụng chứa đựng thực phẩm bằng thuỷ tinh
16. 70 7013 29 00 Bộ đồ uống bằng thuỷ tinh
17. 39 00 Bộ đồ ăn, đồ nhà bếp
18. 7010 90 90 Bình, chai, lọ, ống, các SP tương tự dùng chứa đựng thực
phẩm
19. 20 00 Nút chai, nắp đậy và các loại nắp khác
20. 80 8007 00 90 Thiếc giát mỏng để bao gói thực phẩm
THỰC PHẨM CHỨC NĂNG VÀ SẢM PHẨM BẢO VỆ SỨC KHOẺ
TT Chương (*) Mã hàng Mô tả hàng hoá
1. 15 1517 90 Hỗn hoặp hoặc chế phẩm thực phẩm và sản phẩm bảo vệ
sức khoẻ làm từ mỡ hoặc dầu động thực vật
2. 21 2106 90 92 Thực phẩm dinh dưỡng y học dùng để nuôi ăn cho bệnh
nhânh qua ống xông
3. 2106 90 95 Thực phẩm và sản phẩm bảo vệ sức khoẻ có chứa các
vitamin và khoáng chất
4. 2106 90 99 Thực phẩm và sản phẩm bảo vệ sức khoẻ có chứa một
trong các thành phần hoặc kết hợp một hoặc nhiều thành
phần như: chất chiết động vật, chất chiết thảo dược, acid
amin, chất điện giải…
5. 22 2202
2202
10
10
10
90
Đồ uống thấp năng lượng dành cho người ăn kiêng (người
bệnh tiểu đường, người béo phì, người ăn kiên); Đồ uống có
chứa các chất điện giải
6. 2205
2205
2206
2208
10
90
00
70
Đồ uống có cồn chứa một trong các thành phần hoặc kết
hợp một hoặc nhiều thành phần: chất chiết thảo dược, chất
chiết động vật, các chất khoáng, các chất điện giải…
PHỤ GIA THỰC PHẨM
TT Chương
(*)
Mã hàng Mô tả hàng hoá
I. Các chất điều chỉnh độ axit
1. 28 2809 20 10 Axit orthophosphoric
2. 2815
2815
11
12
00
00
Natri hydroxit
3. 2815 20 00 Kali hydroxit
4. 2825 90 00 Canxi hydroxit
5. 2825 90 00 Canxi oxit
6. 2833 30 00 Nhôm kali sulphat
7. 2835 22 00 Mononatri orthophosphat
8. 40 2835 23 00 Trinatri orthophospâtt
9. 2835 23 00 Trinatri diphosphat
10. 2835 25 00 Dicanxi orthophosphat
11. 2835 25 00 Dicanxi diphosphat
12. 2835 29 00 Monomagie orthophosphat
13. 2836 99 00 Magie cacbonat
14. 28
38
2842
3824
90
90
90
90
Natri nhôm phosphat-axit
15. 28
38
2842
3824
90
90
90
90
Natri nhôm phosphat-bazơ
16. 29 2915 21 00 Axit axetic băng
17. 2915 22 00 Natri axetat
18. 2915 29 00 Natri diaxetat
19. 2915 29 00 Kali axetat (các muối)
20. 2915 29 00 Canxi axetat
21. 2917 12 90 Natri adipat (các muối)
22. 2917 12 90 Axit adipic
23. 2917 12 90 Kali adipat (các muối)
24. 2917 29 00 Natri fumarat
25. 2917 29 90 Axit fumaric
26. 2918 11 00 Axit lactic (L-, D- và DL-)
27. 2918 11 00 Natri lactrat
28. 2918 11 00 Kali lactrat
29. 2918 12 00 Axit tartric
30. 2918 13 00 Dinatri tartrat
31. 2918 13 00 Dikali tartrat
32. 2918 13 00 Mononatri tartrat
33. 2918 13 00 Monokali tartrat
34. 2918 13 00 Kali natri tartrat
35. 2918 14 00 Axit xitric
36. 2918 15 90 Natri dihydro xitrat
37. 2918 15 90 Trinatri xitrat
38. 2918 15 90 Trikali xitrat
39. 2918 19 00 Canxi malat
40. 2918 29 90 Axit malic
41. 2932 29 00 Glucono Delta-Lacton
II. Các chất điều vị
1. 29 2922 42 10 Axit glutamic (L+/-)
2. 2922 42 20 Mononatri glutamat
3. 2922 42 90 Monokali glutamat
4. 2922 42 90 Canxi glutamat
5. 2932 99 90 Maltol
6. 2934 99 90 Axit guanylic
7. 2934 99 90 Axit inosinic
8. 2934 99 90 Etyl maltol
III. Các chất ổn định
1. 28 2827 39 00 Kali clorua
2. 2835 22 00 Dinatri orthophosphat
3. 2835 29 00 Dikali orthophosphat
4. 2835 29 00 Monokali orthophosphat
5. 2835 29 00 Tricanxi orthophosphat
6. 2835 39 90 Amoni polyphosphat
7. 2836 10 90 Amoni hydro cacbonat
8. 2836 30 00 Natri hydro cacbonat
9. 2836 40 00 Kali cacbonat
10. 2836 50 10 Canxi cacbonat
11. 29 2918 11 00 Canxi lactat
12. 29 2918 15 90 Kali dihydro xitrat
13. 39 3905 99 111
999
Polyvinylpyrolidon
IV. Các chất bảo quản
1. 28 2811 23 00 Kali clorua
2. 2832 10 00 Natri sulfit
3. 2832 10 00 Natri hydro sulfit
4. 2832 10 00 Natri metabisulfit
5. 2832 20 00 Kali meta bisulfit
6. 2832 20 00 Kali sulfit
7. 2832 20 00 Canxi hydro sulfit
8. 2832 20 00 Kali bisulfit
9. 2832 30 00 Natri thiosulphat
10. 2834 21 00 Kali nitrat
11. 2834 29 00 Natri nitrat
12. 29 2916 19 00 Natri sorbat
13. 2916 19 00 Kali sorbat
14. 2916 19 00 Canxi sorbat
15. 2916 31 00 Axit benzoic
16. 2916 31 00 Natri benzoat
17. 2916 31 00 Kali benzoat
18. 2916 31 00 Canxi benzoat
19. 2918 29 90 Etyl p-Hydroxybenzoat
20. 2918 29 90 Propyl p-Hydroxybenzoat
21. 2918 29 90 Metyl p-Hydroxybenzoat
22. 2920 90 90 Dimetyl dicacbonat
23. 2933 99 90 Hexametylen Tetramin
24. 35 3507 90 00 Lysozym
25. 38 3824
3824
90
90
20
90
Nisin
V. Các chất chống đông vón
1. 25 2519 90 00 Magie oxit
2. 2526 20 10 Bột talc
3. 2530
2839
90
90
00
00
Canxi silicat
4. 28 2811 22 90 Silicon dioxit vô định hình
5. 2837 20 00 Natri ferocyanua
6. 2837 20 00 Kali ferocyanua
7. 2837 20 00 Canxi ferocyanua
8. 2839 90 00 Magie silicat
9. 2839 90 00 Nhôm silicat
10. 2842 10 00 Natri nhôm silicat
11. 2842 10 00 Canxi nhôm silicat
12. 29
38
2916
3824
15
90
00
20
Muối của axit oleic (Ca, K, Na)
13 2918 15 90 Sắt amoni xitrat
14. 2935 29 00 Trimagie orthophosphat
VI. Các chất chống ôxy hóa
1. 13 1302 19 90 Nhựa cây Gaiac
2. 29 2907 29 00 Tert- Butylhydroquinon (TBHQ)
3. 2909 50 00 Butylat hydroxy anisol (BHA)
4. 2909 19 90 Butylat hydroxy toluen (BHT)
5. 2918 29 90 Propyl galat
6. 2923 20 10 Lexitin
7. 2930 90 00 Dilauryl Thiodipropionat
8. 2932 29 00 Axit erythorbic (Axit Isoascorbic)
9. 2936 27 00 Axit ascorbic (L-)
10. 2936 27 00 Natri ascorbat
11. 2936 27 00 Canxi ascorbat
12. 2936 27 00 Kali ascorbat
13 29
30
2936
3004
27
50
00
1090
Ascorbyl palmitat
14. 29
30
2936
3004
27
50
00
1090
Ascorbyl stearat
15. 2936 28 00 Alpha- Tocopherol
VII. Các chất chống tạo bọt
1. 11
35
1108
3505 10
90
90
Tinh bột đã khử màu
2. 13 1302 19 90 Papain
3. 15 1521 10 00 Sáp Carnauba
4. 17 1701 99 90 Sucraloza
5. 29 2905 32 00 Prypylen glycol
6. 2905 43 00 Manitol
7. 2905
3824
44
60
00
00
Sorbitol và siro sorbitol
8. 2921 29 00 Diamidon phosphat
9. 2921 59 00 Diamidon phosphat đã axetyl hóa
10. 2924 29 10 Aspartam
11. 29
38
2925
3824
11
90
00
20
Sacarin (và muối Na, K, Ca của nó)
12. 2934 99 90 Acesulfam kali
13. 2940 00 00 Isomalt
14. 34 3402 90 13 Polyoxyetylen (20) Sorbitan monooleat
38 3824 90 90
15. 34
39
3402
3910
90
00
13
0090
Polydimetyl siloxan
16. 35 3506 10 00 Dextrin, tinh bột rang trắng, vàng
17. 3505 10 90 Tinh bột đã được xử lý bằng axit
18. 3505 10 90 Tinh bột đã được xử lý bằng kiềm
19. 3505 10 90 Tinh bột xử lý oxi hóa
20. 3505 10 90 Tinh bột xử lý bằng enzim
21. 3505 10 90 Monoamidon phosphat
22. 3505 10 90 Diamidon glyxerol
23. 35
38
3505
3824
10
90
90
20
Diamidon phosphat (este hóa với Natri trimetaphosphat hoặc
với Phospho Oxyclorua)
24. 3505 10 90 Amidon axetat (este hóa với Anhydrit axetic)
25. 3505 10 90 Amidon axetat (este hóa với Vinyl axetat)
26. 35
38
3505
3824
10
90
90
20
Diamidon hydroxypropyl phosphat
27. 35
38
3505
3824
10
90
90
20
Diamidon hydroxypropyl glyxerol
28. 3507 90 00 Amylaza (các loại)
29. 3507 90 00 Proteaza
30. 3507 90 00 Bromelain
31. 3507 90 00 Glucoza Oxidaza (Aspergillus niger var)
32. 3507 90 00 Malt carbohydraza
33. 39 3901 10 21 Polyetylen glycol
34. 3912 90 90 Xenluloza vi tinh thể
35. 3913 10 00 Natri alginat
VIII. Các chất khí đẩy
1. 28 2804 30 00 Khí nitơ
2. 28 2811 29 90 Khí nitơ oxit
IX. Các chất làm bóng
1. 13 1301 10 00 Senlac
2. 15 1521 10 00 Sáp Candelila
3. 15 1521 90 10 Sáp ong (trắng và vàng)
4. 27 2712 90 90 Sáp vi tinh thể
5. 2712
2712
90
20
10
00
Sáp dầu
6. 38 3824 90 20 Dầu khoáng (dùng cho thực phẩm)
X. Các chất làm dày
1. 13 1301 20 00 Gôm Arabic
2. 1301 90 90 Gôm Tragacanth
3. 1301 90 90 Gôm Karaya
4. 1301 90 90 Gôm Tara
5. 1301 90 90 Gôm Gellan
6. 1302 20 00 Pectin
7. 1302 31 00 Thạch trắng (Aga)
8. 1302 32 00 Gôm đậu Carob
9. 1302 32 00 Gôm Gua
10. 13
31
38
1302
3106
3824
39
90
90
10
89
20
Carrageenan và muối Na, K, NH4 của nó (bao gồm Furcellaran)
11. 39
35
3902
3503
31
00
00
2090
Gelatin thực phẩm
12. 39 3912 39 00 Metyl xenluloza
13. 3912 39 00 Metyl etyl xenluloza
14. 3912 31 00 Natri cacboxy metyl xenluloza
15. 3913 10 00 Axit alginic
16. 3913 10 00 Kali alginat
17. 3913 10 00 Amoni alginat
18. 3913 10 00 Canxi alginat
19. 3913 10 00 Propylen glycol alginat
20. 3913 90 00 Gôm Xanthan
XI. Các chất làm ẩm
1. 15 1520 Glycerol
2. 28 2835 39 90 Canxi dihydro diphosphat
XII. Các chất làm rắn chắc
1. 28 2827 20 Canxi clorua
2. 2833 29 00 Canxi sulfat
3. 2833
2833
22
22
90
10
Nhôm sulfat
4. 2833 30 00 Nhôm natri sulphat
5. 2833 30 00 Nhôm amoni sulphat
6. 2835 26 00 Monocanxi orthophosphat
7. 29
38
2918
3824
15
90
10
20
Canxi xitrat
8. 29 2918 16 00 Canxi gluconat
XIII. Các chất làm nhũ hóa
1. 21 2106 90 99 Mono và diglycerit của các axit béo
2. 28 2835 24 00 Trikali orthophosphat
3. 2835 29 60 Muối Amoni của axit phosphatidic
4. 2835 39 90 Dinatri diphosphat
5. 2835 39 90 Dikali diphosphat
6. 2835 39 90 Canxi polyphosphat
7. 29
38
2915
3824
70
90
30
20
Sorbitan Monostearat
8. 29
38
2915
3824
70
90
30
20
Sorbitan tristearat
9. 29 2917 19 00 Diocyl natri sulfosuxinat
10. 2918 13 00 Stearyl tartrat
11. 2918 15 90 Stearyl xitrat
12. 2940 00 00 Sucroza axetat isobutyrat
13. 38 3823
3824
19
90
90
20
Hỗn hợp giữa este của glyxerol với Axit axetic và Axit béo và
este của glyxerol với Axit tactric và Axit béo
14. 38
29
3823
3824
2918
19
90
11
90
20
00
Este của glycerol với Axit lactic và các axit béo
15. 38
29
3823
3824
2918
19
90
14
90
20
00
Este của glycerol với Axit xitric và axit béo
16. 38
29
3823
3824
2918
19
90
13
90
20
00
Este của glycerol với Axit diaxetyl tactaric và axit béo
17. 3824
2106
90
90
20
99
Sucroglyxerit
18. 38 3824 90 20 Este của polyglycerol và Axit béo
19. 3824 90 20 Glycerol Esters của nhựa cây
20. 3824 90 20 Muối của axit myristic, palmitic và stearic (NH4, Ca, K, Na)
21. 3824 90 20 Este của Sucroza với các axit béo
22. 3824
3824
90
90
90
20
Sorbitan Monolaurat
23. 3824
3824
90
90
90
20
Sorbitan Monooleat
24. 3824
3824
90
90
90
20
Sorbitan Monopalmitat
XIV. Phẩm màu
1. 26
28
32
2614
2823
3206
00
00
11
(19)
00
Titan dioxit
2. 28 2821 10 00 Sắt oxit, đen
3. 2821 10 00 Sắt oxit, đỏ
4. 2821 10 00 Sắt oxit, vàng
5. 29 2936 23 00 Vàng Riboflavin (Riboflavin) Riboflavin
6. 32 3203 00 10 Vàng Curcumin (Vàng nghệ)
7. 3203 00 10 Carmin
8. 3203 00 10 Clorophyl
9. 3203 00 10 Clorophyl phức đồng
10. 3203 00 10 Clorophyl phức đồng (muối Natri, kali của nó)
11. 3203 00 1009 Beta-caroten tổng hợp
12. 3203 00 1009 Caroten tự nhiên (chiết xuất từ thực vật)
13. 3203 00 1009 Chất chiết xuất từ Annatto
14. 3203 00 1009 Beta-Apo-Carotenal
15. 3203 00 10 Chất chiết xuất từ vỏ nho
16. 3204 12 00 Xanh lục bền (FCF)
17. 3204 12 00 Vàng Tartrazin (Tartrazin)
18. 3204 12 00 Vàng Quinolin
19. 3204
3204
12
17
00
90
Carmoisine
20. 3204 12 00 Đỏ Amaranth (Amaranth)
21. 3204 12 00 Đỏ Ponceau 4R (Ponceau 4R)
22. 3204 12 00 Vàng Erythrosin (Erythrosin)
23. 3204 12 00 Đỏ 2G
24. 3204 12 00 Đỏ Allura AC
25. 3204 12 00 Indigotin (Indigocarmine)
26. 3204 12 00 Xanh Brilliant FCF
27. 3204 12 00 Xanh S
28. 3204 12 00 Đen Brilliant PN
29. 3204 17 2090 Vàng Sunset FCF (Sunset Yellow FCF)
30. 3204 17 90
(20)
Este Metyl (hoặc Etyl) của axit Beta-Apo-8’-Carotenic
31. 3204 17 90
(20)
Canthaxanthin
32. 3204 Caramen nhóm I (không xử lý)
33. 3204 Nâu HT
XV. Các chất tạo bọt
1. 14 1404 90 90 Chất chiết xuất từ Quillaia
XVI. Các chất tạo phức kim loại
1. 15 1503 00 90 Oxystearin
2. 28 2835 39 90 Tetranatri diphosphat
3. 2835 39 90 Tetrakali diphosphat
4. 2835 39 90 Dimagie diphosphat
5. 2835 39 90 Pentanatri triphosphat
6. 2835 39 90 Pentakali triphosphat
7. 2835 39 90 Natri polyphosphat
8. 2835 39 90 Kali polyphosphat
9. 2835 39 90 Natri canxi polyphosphat
10. 29 2918 15 90 Isopropyl xitrat
11. 2918 16 00 Natri gluconat
12. 2918 16 00 Kali gluconat
13. 2922 49 90 Canxi Dinatri Etylen-Diamin-Tetra-axetat
14. 2922 49 90 Dinatri Etylen-Diamin-Tetra-axetat (EDTA)
XVII. Các chất tạo xốp
1. 28 2836 10 00 Amoni cacbonat
2. 2836 99 00 Natri cacbonat
XVII. Chất xử lý bột
1. 29 2927 00 10 Azodicacbonamit
XIX. Các chất tạo hương tự nhiên
1. 09 0910 20
30
00
00
Saffron (cây nghệ)
2. 13 1302 19 90 Các chiết xuất từ cây vani
3. 21 2106 90 82 Hương khói tự nhiên và các chiết xuất của nó
4. 2106 90 82 Hương liệu tự nhiên và các hương liệu giống tự nhiên
5. 33 3301 11-
99
10-
90
Tinh dầu họ quả cam quýt
6. 3301 19 10-
90
Dầu nguyệt quế anh đào
7. 3301 25 10-
90
Hương bạc hà
8. 3301 29 11 Hương quế
9. 3301 29 91 Các dầu gia vị và chiết xuất từ gia vị
10. 3301 29 91 Dầu hạnh nhân đắng
11. 3301 90 90 Tinh dầu quả tự nhiên
12. 3301 90 90 Dầu ớt
XX. Các chất tạo hương tổng hợp
1. 13 1301 90 90 Benzoin gum
2. 29 2902 19 00 Limonen, d-
3. 2905 22 00 Linalool
4. 2906 11 00 Menthol
5. 2906 21 00 Benzyl alcohol
6. 2907 29 00 Metyl benzyl, alpha-alcohol
7. 3307 41 44 Hương khói
8. 2909 30 00 Anethole, trans-
9. 2909 30 00 Anethol, beta-
10. 2909 30 00 Eugenyl metyl ete
11. 2909 50 00 Eugenol
12. 2912 19 00 Nonanal
13. 2912 19 00 Octanal
14. 2912 19 00 Citral
15. 2912 21 00 Benzadehyt
16. 2912 41 00 Vanillin
17. 2912 42 00 Etyl vanilin
18. 2914 23 00 Inonon, alpha
19. 2914 23 00 Inonon, beta
20. 2914 29 00 Carvon, d-
21. 2914 29 00 Carvon, l-
22. 2914 39 00 Metyl naphtyl, beta-keton
*****
CỘNG HOÀ XÃ HỘI CHỦ NGHĨA VIỆT NAM
Độc lập - Tự do - Hạnh phúc
*******
Số: 818/QĐ-BYT Hà Nội, ngày 05 tháng 03 năm 2007
QUYẾT ĐỊNH
VỀ VIỆC BAN HÀNH DANH MỤC HÀNG HOÁ NHẬP KHẨU PHẢI KIỂM TRA VỀ VỆ SINH AN TOÀN
THỰC PHẨM THEO MÃ SỐ HS
BỘ TRƯỞNG BỘ Y TẾ
Căn cứ Nghị định số 49/2003/NĐ-CP ngày 15 tháng 5 năm 2003 của Chính phủ “Quy định chức năng,
nhiệm vụ, quyền hạn và cơ cấu tổ chức của Bộ Y tế”;
Căn cứ Pháp lệnh Vệ sinh an toàn thực phẩm số 12/2003/PL-UBTVQH 11 ngày 26 tháng 7 năm 2003;
Căn cứ Nghị định số 163/2004/NĐ-CP ngày 07 tháng 9 năm 2004 của Chính phủ “Quy định chi tiết thi
hành một số điều của Pháp lệnh Vệ sinh an toàn thực phẩm”;
Căn cứ Khoản 2, Điều 8, Nghị định số 12/2006/NĐ-CP ngày 23 tháng 01 năm 2006 của Chính phủ quy
định chi tiết thi hành Luật Thương mại về hoạt động mua bán hàng hoá quốc tế và các hoạt động đại lý
mua, bán, gia công, và quá cảnh hàng hoá với nước ngoài;
Xét đề nghị của Cục trưởng Cục An toàn vệ sinh thực phẩm- Bộ Y tế.
QUYẾT ĐỊNH
Điều 1. Ban hành kèm theo Quyết định này “Danh mục hàng hoá nhập khẩu phải kiểm tra về vệ sinh an
toàn thực phẩm theo mã số HS” bao gồm:
1. Các chế phẩm từ thịt, cá;
2. Mỡ và dầu động vật hoặc thực vật;
3. Sữa và các sản phẩm từ sữa;
4. Đường và các loại kẹo đường;
5. Ca cao và các chế phẩm từ ca cao;
6. Chế phẩm từ ngũ cốc, bột, tinh bột, hoặc sữa; các loại bánh;
7. Cà phê, chè, hạt tiêu;
8. Chế phẩm từ rau, quả;
9. Gia vị;
10. Đồ uống, rượu và giấm;
11. Bao bì và vật dụng chứa đựng thực phẩm;
12. Thực phẩm chức năng và sản phẩm bảo vệ sức khoẻ;
13. Phụ gia thực phẩm.
Điều 2. Quyết định có hiệu lực kể từ ngày ký ban hành.
Điều 3. Trong trường hợp xảy ra tranh chấp liên quan đến mã số HS trong Danh mục ban hành kèm
theo Quyết định này, Cục An toàn vệ sinh thực phẩm (Bộ Y tế) sẽ chủ trì phối hợp với Tổng cục Hải
quan (Bộ Tài chính) xem xét lại để thống nhất và quyết định mã số.
Điều 4. Các ông (bà): Chánh Văn phòng, Chánh Thanh tra, Vụ trưởng Vụ Pháp chế- Bộ Y tế, Cục
trưởng, Cục An toàn vệ sinh thực phẩm trực thuộc Bộ Y tế, Giám đốc sở Y tế các tỉnh, thành phố trực
thuộc Trung ương; thủ trưởng các đơn vị y tế, Thủ trưởng các đơn vị liên quan và tổ chức, cá nhân
trong nước và nước ngoài có hoạt động trong lĩnh vực nhập khẩu thực phẩm vào Việt Nam chịu trách
nhiệm thi hành Quyết định này./.
Nơi nhận:
- Như điều 4;
- Tổng cục Hải quan (để phối hợp thực hiện);
- Bộ trưởng (để b/c);
- Các Thứ trưởng (để biết) ;
KT. BỘ TRƯỞNG
THỨ TRƯỞNG
- Các Bộ, ngành liên quan;
- Các Vụ, Cục liên quan thuộc Bộ Y tế;
- Sở Y tế, TTYTDP các tỉnh, TP trực thuộc TW;
- Y tế Ngành;
- Website BYT;
- Lưu: VT, ATTP.
Trịnh Quân Huấn
DANH MỤC
HÀNG HOÁ NHẬP KHẨU PHẢI KIỂM TRA VỀ VỆ SINH AN OÀN THỰC PHẨM THEO MÃ SỐ HS
(Ban hành kèm theo Quyết định số 818/QĐ-BYT ngày 05 tháng 3 năm 2007 của Bộ trưởng Bộ Y tế)
1.Danh mục
CÁC CHẾ PHẨM TỪ THỊT, CÁ
TT Chương (*) Mã hàng Mô tả hàng hoá
1. 16 1601 Xúc xích và các sản phẩm tương tự làm từ thịt, từ phụ
phẩm dạng thịt sau giết mổ hoặc tiết; các chế phẩm
thực phẩm từ các sản phẩm đó
2. 1602 Thịt, các phụ phẩm dạng thịt sau giết mổ đã chế biến
hoặc bảo quản bao gồm các sản phẩm dạng thịt muối
hoặc đóng hộp
3. 1603 Phần chiết và nước ép từ thịt, cá bao gồm cá loại có
hoặc không có gia vị
4. 1604 Cá đã được chế biến hay bảo quản; trứng cá muối
MỠ VÀ DẦU ĐỘNG VẬT HOẶC THỰC VẬT
TT Chương (*) Mã hàng Mô tả hàng hoá
1. 15 1504 10 10 Dầu gan cá và các phần phân đoạn của chúng dùng làm
thực phẩm
2. 1507 90 10 Dầu đậu tương đã tinh chế dùng làm thực phẩm
3. 1508 90 10 Dầu lạc đã tinh chế dùng làm thực phẩm
4. 1509 90
90
11
19
Dầu ô-liu đã tinh chế dùng làm thực phẩm
5. 1512 19 10 Dầu hạt hướng dương đã tinh chế dùng làm thực phẩm
6. 1514 19
99
10
10
Dầu hạt cải, dầu mù tạt đã tinh chế dùng làm thực phẩm
7. 1515 50 90 Dầu hạt vừng và các phần phân đoạn của dầu hạt vừng
đã tinh chế
8. 1517 10
90
00
20
Margarin
SỮA VÀ CÁC SẢN PHẨM TỪ SỮA
TT Chương (*) Mã hàng Mô tả hàng hoá
1. 04 0401 Sữa và kem chưa cô đặc, chưa pha thêm đường hoặc
chất ngọt khác
2. 0402 Sữa và kem cô đặc hoặc đã pha thêm đường hoặc chất
ngọt khác
3. 0403 Buttermilk (phụ phẩm thu được từ quá trình làm bơ sữa),
sữa đông và kem, sữa chua, kephir và sữa, kem khác đã
lên men hoặc a xít hoá, đã hoặc chưa cô đặc hoặc pha
thêm đường hoặc chất ngọt khác hoặc hương liệu, hoa
quả, quả hạch hoặc ca cao
4. 0405 Bơ và các chất béo khác và các loại dầu chế từ sữa chưa
phết bơ sữa (dairy spreads)
5. 0406 Phơ mát
6. 22 2202 90 10 Sữa tiệt trùng
ĐƯỜNG VÀ CÁC LOẠI KẸO ĐƯỜNG
TT Chương (*) Mã hàng Mô tả hàng hoá
1. 17 1701 Đường mía hoặc đường của cải và đường sucroza tinh
khiết về mặt hoá học ở thể rắn
Đường thô chưa pha thêm hương liệu hoặc chất màu
2. 1701 11 00 Đường mía
3. 1701 12 00 Đường củ cải
4. 1701 91 00 Đã pha thêm hương liệu hoặc chất màu
5. Đường tinh luyện
6. 1701 99 11 Đường trắng
7. 1704 Các loại kẹo đường (kể cả sô-cô-la trắng), không chứa
ca cao
8. 1704 10 00 Kẹo cao su đã hoặc chưa bọc đường
9. 1704 90 10 Kẹo dược phẩm
10. 1704 90 20 Sô cô la trắng
11. 1704 90 90 Các loại kẹo khác
CA CAO VÀ CÁC CHẾ PHẨM TỪ CA CAO
TT Chương (*) Mã hàng Mô tả hàng hoá
1. 18 1803 Bột ca cao nhão đã hoặc chưa khử chất béo
2. 1804 00 00 Bơ ca cao, mỡ và dầu ca cao
3. 1805 00 00 Bột ca cao chưa pha thêm đường hay chất ngọt khác
4. 1806 Sôcôla và chế phẩm thực phẩm khác có chứa ca cao
CHẾ PHẨM TỪ NGŨ CỐC, BỘT, TINH BỘT HOẶC SỮ VÀ CÁC LOẠI BÁNH
TT Chương (*) Mã hàng Mô tả hàng hoá
1. 19 1901 Thực phẩm chế biến từ ngũ cốc dưới dạng tấm, bột thô,
tinh bột hoặc chiết xuất từ mall
2. 1902 Các sản phẩm bột nhào (pasta) đã hoặc chưa làm chín
hoặc nhồi (thịt hoặc các chất khác) hay chế biến cách
khác như spaghety, macaroni, mì sợi, mì dẹt, gnocchi,
ravioli, cannelloni, cut-cut (couscous), đã hoặc chưa chế
biến
3. 1904 Thức ăn chế biến từ quá trình nổ hoặc rang ngũ cốc hoặc
từ các sản phẩm ngũ cốc (ví dụ: mảnh ngô chế biến từ
bột ngô); ngũ cốc (trừ ngô) ở dạng hạt, mảnh hoặc hạt đã
lềm thành dạng khác (trừ bột, tấm và bột thô), đã làm chín
sơ hoặc chế biến cách khác
4. 1905 Bánh mì, bánh ngọt, bánh quy và các loại bánh khác, có
hoặc không chứa ca cao; bánh thành, bánh quế, bánh đa
nem và các sản phẩm tương tự (bao gổm các loại snack)
5. 20 2005 20 10 Khoai tây chiên các loại
CÀ PHÊ, CHÈ, HẠT TIÊU
TT Chương (*) Mã hàng Mô tả hàng hoá
1. 09 0901 Các loại cà phê đã rang dạng hạt, bột đã khử hoặc chưa
khử cafein
2. 09 0902 10
10
20
20
10
90
10
90
Chè xanh các loại
3. 0902 30
30
40
40
10
90
10
90
Chè đen nguyên cánh hoặc được chế biến dưới dạng chè
nhúng
4. 0904 Hạt tiêu
5. 0904 11 Chưa xay hoặc nghiền
6. 0904 12 Đã xay hoặc nghiền
7. 21 2101 11 10 Cà phê tan
CHẾ PHẨM TỪ RAU, QUẢ
TT Chương (*) Mã hàng Mô tả hàng hoá
1. 20 2001
2002
2003
2005
Rau, quả, vỏ quả, các phần khác của cây đã chế biến hoặc
bảo quản bằng giấm hay axit axetic hoặc bảo quản bằng
cách khác bao gồm cả rau, quả muối
2. 2006 Rau, quả, vỏ quả, các phần khác của cây đã qua chế biến,
có hoặc không tẩm đường, ngâm trong nước đường hoặc
bọc đường hoặc tẩm các phụ gia thực phẩm khác
3. 2007 Mứt, nước quả nấu đông (thạch), mứt từ quả thuộc chi cam
quýt, quả hoặc quả hạch nghiền sệt, quả hoặc quả hạch
nghiền cô đặc, thu được từ quá trình đun nấu đã hoặc chưa
pha thêm đường hay chất ngọt khác
4. 2008 Quả, quả hạch và các phần khác ăn được của cây đã chế
biến, pha thêm đường hay chất ngọt khác hoặc rượu
GIA VỊ
TT Chương (*) Mã hàng Mô tả hàng hoá
1. 21 2103 Nước xốt và các chế phẩm làm nước xốt
2. 2103 Đồ gia vị hỗn hợp và bột canh hỗn hợp; bột mịn và bột thô
từ hạt tù tạt và mù tạt đã chế biến, các loại nước tương,
nước mắm
3. 2104 Súp, nước xuýt và chế phẩm để làm súp, nước xuýt; chế
phẩm thực phẩm tổng hợp đồng nhất
ĐỒ UỐNG, RƯỢU VÀ GIẤM
TT Chương (*) Mã hàng Mô tả hàng hoá
1. 20 2009 Nước quả ép (kể cả hèm nho) và nước rau ép, chưa lên
men và chưa pha rượu, đã hoặc chưa pha thêm đường hay
chất ngọt khác
2. 22 2201 10 00 Nước, kể cả nước khoáng tự nhiên hoặc nhân tạo và nước
có ga, chưa pha thêm đường hoặc chất ngọt khác hay
hương liệu
3. 2202 10 Nước, kể cả nước khoáng và nước có ga, đã pha thêm
đường hoặc chất ngọt khác hay hương liệu và đồ uống
không chứa cồn khác
4. 2202 90 20 Sữa đậu nành
5. 2202 90 30
90
Đồ uống không có ga dùng ngay được không cần pha loãng
và các đồ uống không chứa cồn khác (trừ nước quả ép)
6. 2203 Bia sản xuất từ malt
7. 2204
2205
2206
Rượu có độ cồn thấp bao gồm rượu vang hoa quả và rượu
vang hoa quả có chứa CO
2
8. 2208 30
60
90
Rượu trắng (Đồ uống có cồn được trưng cất từ dịch lên men
nguồn gốc tinh bột, đường, hoặc pha chế từ cồn thực phẩm
và nước)
9. 2208 20
40
70
Rượu mùi (Sản phẩm pha chế từ cồn thực phẩm với nước,
có thể bổ xung thêm đường, dịch chiết từ trái cây và phụ gia
thực phẩm)
10. 2209 Giấm và chất thay thế giấm làm từ axit axetic
BAO BÌ VÀ VẬT DỤNG CHỨA ĐỰNG THỰC PHẨM
TT Chương (*) Mã hàng Mô tả hàng hoá
1. 39 3923 Dụng cụ chứa đựng thực phẩm bằng Plastic
2. 10 90 Hộp chứa đựng thực phẩm
3. 21
29
90
90
Bao, túi chứa đựng thực phẩm (PET, PVC, PE)
4. 30 90 Bình, chai, lọ, các SP tương tự
5. 50 90 Nút, nắp, mũ, van, nắp đậy tương tự
6. 90 00 Thùng chứa, bể chứa, ống dẫn thực phẩm, các SP tương tự
7. 3924 10 00 Bộ đồ ăn, bộ đồ dùng nhà bếp bằng plastic
8. 40 4014 Cao su và các sản phẩm bằng cao su
9. 90 10 Núm vú của chai cho trẻ em ăn và các loại tương tự
10. 90 20 Vú cao su (cho trẻ em)
11. Vật dụng chứa đựng thực phẩm bằng gốm sứ
12. 48 4819 50 00 Bao bì chứa đựng TP bằng giấy, có lớp tiếp xúc trong cùng
là chất liệu khác (trừ xenlulo)
13. 69 6911 10 00 Bộ đồ ăn, đồ nhà bếp bằng sứ
14. 6912 00 00 Bộ đồ ăn, đồ nhà bếp bằng gốm
15. Vật dụng chứa đựng thực phẩm bằng thuỷ tinh
16. 70 7013 29 00 Bộ đồ uống bằng thuỷ tinh
17. 39 00 Bộ đồ ăn, đồ nhà bếp
18. 7010 90 90 Bình, chai, lọ, ống, các SP tương tự dùng chứa đựng thực
phẩm
19. 20 00 Nút chai, nắp đậy và các loại nắp khác
20. 80 8007 00 90 Thiếc giát mỏng để bao gói thực phẩm
THỰC PHẨM CHỨC NĂNG VÀ SẢM PHẨM BẢO VỆ SỨC KHOẺ
TT Chương (*) Mã hàng Mô tả hàng hoá
1. 15 1517 90 Hỗn hoặp hoặc chế phẩm thực phẩm và sản phẩm bảo vệ
sức khoẻ làm từ mỡ hoặc dầu động thực vật
2. 21 2106 90 92 Thực phẩm dinh dưỡng y học dùng để nuôi ăn cho bệnh
nhânh qua ống xông
3. 2106 90 95 Thực phẩm và sản phẩm bảo vệ sức khoẻ có chứa các
vitamin và khoáng chất
4. 2106 90 99 Thực phẩm và sản phẩm bảo vệ sức khoẻ có chứa một
trong các thành phần hoặc kết hợp một hoặc nhiều thành
phần như: chất chiết động vật, chất chiết thảo dược, acid
amin, chất điện giải…
5. 22 2202
2202
10
10
10
90
Đồ uống thấp năng lượng dành cho người ăn kiêng (người
bệnh tiểu đường, người béo phì, người ăn kiên); Đồ uống có
chứa các chất điện giải
6. 2205
2205
2206
2208
10
90
00
70
Đồ uống có cồn chứa một trong các thành phần hoặc kết
hợp một hoặc nhiều thành phần: chất chiết thảo dược, chất
chiết động vật, các chất khoáng, các chất điện giải…
PHỤ GIA THỰC PHẨM
TT Chương
(*)
Mã hàng Mô tả hàng hoá
I. Các chất điều chỉnh độ axit
1. 28 2809 20 10 Axit orthophosphoric
2. 2815
2815
11
12
00
00
Natri hydroxit
3. 2815 20 00 Kali hydroxit
4. 2825 90 00 Canxi hydroxit
5. 2825 90 00 Canxi oxit
6. 2833 30 00 Nhôm kali sulphat
7. 2835 22 00 Mononatri orthophosphat
8. 40 2835 23 00 Trinatri orthophospâtt
9. 2835 23 00 Trinatri diphosphat
10. 2835 25 00 Dicanxi orthophosphat
11. 2835 25 00 Dicanxi diphosphat
12. 2835 29 00 Monomagie orthophosphat
13. 2836 99 00 Magie cacbonat
14. 28
38
2842
3824
90
90
90
90
Natri nhôm phosphat-axit
15. 28
38
2842
3824
90
90
90
90
Natri nhôm phosphat-bazơ
16. 29 2915 21 00 Axit axetic băng
17. 2915 22 00 Natri axetat
18. 2915 29 00 Natri diaxetat
19. 2915 29 00 Kali axetat (các muối)
20. 2915 29 00 Canxi axetat
21. 2917 12 90 Natri adipat (các muối)
22. 2917 12 90 Axit adipic
23. 2917 12 90 Kali adipat (các muối)
24. 2917 29 00 Natri fumarat
25. 2917 29 90 Axit fumaric
26. 2918 11 00 Axit lactic (L-, D- và DL-)
27. 2918 11 00 Natri lactrat
28. 2918 11 00 Kali lactrat
29. 2918 12 00 Axit tartric
30. 2918 13 00 Dinatri tartrat
31. 2918 13 00 Dikali tartrat
32. 2918 13 00 Mononatri tartrat
33. 2918 13 00 Monokali tartrat
34. 2918 13 00 Kali natri tartrat
35. 2918 14 00 Axit xitric
36. 2918 15 90 Natri dihydro xitrat
37. 2918 15 90 Trinatri xitrat
38. 2918 15 90 Trikali xitrat
39. 2918 19 00 Canxi malat
40. 2918 29 90 Axit malic
41. 2932 29 00 Glucono Delta-Lacton
II. Các chất điều vị
1. 29 2922 42 10 Axit glutamic (L+/-)
2. 2922 42 20 Mononatri glutamat
3. 2922 42 90 Monokali glutamat
4. 2922 42 90 Canxi glutamat
5. 2932 99 90 Maltol
6. 2934 99 90 Axit guanylic
7. 2934 99 90 Axit inosinic
8. 2934 99 90 Etyl maltol
III. Các chất ổn định
1. 28 2827 39 00 Kali clorua
2. 2835 22 00 Dinatri orthophosphat
3. 2835 29 00 Dikali orthophosphat
4. 2835 29 00 Monokali orthophosphat
5. 2835 29 00 Tricanxi orthophosphat
6. 2835 39 90 Amoni polyphosphat
7. 2836 10 90 Amoni hydro cacbonat
8. 2836 30 00 Natri hydro cacbonat
9. 2836 40 00 Kali cacbonat
10. 2836 50 10 Canxi cacbonat
11. 29 2918 11 00 Canxi lactat
12. 29 2918 15 90 Kali dihydro xitrat
13. 39 3905 99 111
999
Polyvinylpyrolidon
IV. Các chất bảo quản
1. 28 2811 23 00 Kali clorua
2. 2832 10 00 Natri sulfit
3. 2832 10 00 Natri hydro sulfit
4. 2832 10 00 Natri metabisulfit
5. 2832 20 00 Kali meta bisulfit
6. 2832 20 00 Kali sulfit
7. 2832 20 00 Canxi hydro sulfit
8. 2832 20 00 Kali bisulfit
9. 2832 30 00 Natri thiosulphat
10. 2834 21 00 Kali nitrat
11. 2834 29 00 Natri nitrat
12. 29 2916 19 00 Natri sorbat
13. 2916 19 00 Kali sorbat
14. 2916 19 00 Canxi sorbat
15. 2916 31 00 Axit benzoic
16. 2916 31 00 Natri benzoat
17. 2916 31 00 Kali benzoat
18. 2916 31 00 Canxi benzoat
19. 2918 29 90 Etyl p-Hydroxybenzoat
20. 2918 29 90 Propyl p-Hydroxybenzoat
21. 2918 29 90 Metyl p-Hydroxybenzoat
22. 2920 90 90 Dimetyl dicacbonat
23. 2933 99 90 Hexametylen Tetramin
24. 35 3507 90 00 Lysozym
25. 38 3824
3824
90
90
20
90
Nisin
V. Các chất chống đông vón
1. 25 2519 90 00 Magie oxit
2. 2526 20 10 Bột talc
3. 2530
2839
90
90
00
00
Canxi silicat
4. 28 2811 22 90 Silicon dioxit vô định hình
5. 2837 20 00 Natri ferocyanua
6. 2837 20 00 Kali ferocyanua
7. 2837 20 00 Canxi ferocyanua
8. 2839 90 00 Magie silicat
9. 2839 90 00 Nhôm silicat
10. 2842 10 00 Natri nhôm silicat
11. 2842 10 00 Canxi nhôm silicat
12. 29
38
2916
3824
15
90
00
20
Muối của axit oleic (Ca, K, Na)
13 2918 15 90 Sắt amoni xitrat
14. 2935 29 00 Trimagie orthophosphat
VI. Các chất chống ôxy hóa
1. 13 1302 19 90 Nhựa cây Gaiac
2. 29 2907 29 00 Tert- Butylhydroquinon (TBHQ)
3. 2909 50 00 Butylat hydroxy anisol (BHA)
4. 2909 19 90 Butylat hydroxy toluen (BHT)
5. 2918 29 90 Propyl galat
6. 2923 20 10 Lexitin
7. 2930 90 00 Dilauryl Thiodipropionat
8. 2932 29 00 Axit erythorbic (Axit Isoascorbic)
9. 2936 27 00 Axit ascorbic (L-)
10. 2936 27 00 Natri ascorbat
11. 2936 27 00 Canxi ascorbat
12. 2936 27 00 Kali ascorbat
13 29
30
2936
3004
27
50
00
1090
Ascorbyl palmitat
14. 29
30
2936
3004
27
50
00
1090
Ascorbyl stearat
15. 2936 28 00 Alpha- Tocopherol
VII. Các chất chống tạo bọt
1. 11
35
1108
3505 10
90
90
Tinh bột đã khử màu
2. 13 1302 19 90 Papain
3. 15 1521 10 00 Sáp Carnauba
4. 17 1701 99 90 Sucraloza
5. 29 2905 32 00 Prypylen glycol
6. 2905 43 00 Manitol
7. 2905
3824
44
60
00
00
Sorbitol và siro sorbitol
8. 2921 29 00 Diamidon phosphat
9. 2921 59 00 Diamidon phosphat đã axetyl hóa
10. 2924 29 10 Aspartam
11. 29
38
2925
3824
11
90
00
20
Sacarin (và muối Na, K, Ca của nó)
12. 2934 99 90 Acesulfam kali
13. 2940 00 00 Isomalt
14. 34 3402 90 13 Polyoxyetylen (20) Sorbitan monooleat
38 3824 90 90
15. 34
39
3402
3910
90
00
13
0090
Polydimetyl siloxan
16. 35 3506 10 00 Dextrin, tinh bột rang trắng, vàng
17. 3505 10 90 Tinh bột đã được xử lý bằng axit
18. 3505 10 90 Tinh bột đã được xử lý bằng kiềm
19. 3505 10 90 Tinh bột xử lý oxi hóa
20. 3505 10 90 Tinh bột xử lý bằng enzim
21. 3505 10 90 Monoamidon phosphat
22. 3505 10 90 Diamidon glyxerol
23. 35
38
3505
3824
10
90
90
20
Diamidon phosphat (este hóa với Natri trimetaphosphat hoặc
với Phospho Oxyclorua)
24. 3505 10 90 Amidon axetat (este hóa với Anhydrit axetic)
25. 3505 10 90 Amidon axetat (este hóa với Vinyl axetat)
26. 35
38
3505
3824
10
90
90
20
Diamidon hydroxypropyl phosphat
27. 35
38
3505
3824
10
90
90
20
Diamidon hydroxypropyl glyxerol
28. 3507 90 00 Amylaza (các loại)
29. 3507 90 00 Proteaza
30. 3507 90 00 Bromelain
31. 3507 90 00 Glucoza Oxidaza (Aspergillus niger var)
32. 3507 90 00 Malt carbohydraza
33. 39 3901 10 21 Polyetylen glycol
34. 3912 90 90 Xenluloza vi tinh thể
35. 3913 10 00 Natri alginat
VIII. Các chất khí đẩy
1. 28 2804 30 00 Khí nitơ
2. 28 2811 29 90 Khí nitơ oxit
IX. Các chất làm bóng
1. 13 1301 10 00 Senlac
2. 15 1521 10 00 Sáp Candelila
3. 15 1521 90 10 Sáp ong (trắng và vàng)
4. 27 2712 90 90 Sáp vi tinh thể
5. 2712
2712
90
20
10
00
Sáp dầu
6. 38 3824 90 20 Dầu khoáng (dùng cho thực phẩm)
X. Các chất làm dày
1. 13 1301 20 00 Gôm Arabic
2. 1301 90 90 Gôm Tragacanth
3. 1301 90 90 Gôm Karaya
4. 1301 90 90 Gôm Tara
5. 1301 90 90 Gôm Gellan
6. 1302 20 00 Pectin
7. 1302 31 00 Thạch trắng (Aga)
8. 1302 32 00 Gôm đậu Carob
9. 1302 32 00 Gôm Gua
10. 13
31
38
1302
3106
3824
39
90
90
10
89
20
Carrageenan và muối Na, K, NH4 của nó (bao gồm Furcellaran)
11. 39
35
3902
3503
31
00
00
2090
Gelatin thực phẩm
12. 39 3912 39 00 Metyl xenluloza
13. 3912 39 00 Metyl etyl xenluloza
14. 3912 31 00 Natri cacboxy metyl xenluloza
15. 3913 10 00 Axit alginic
16. 3913 10 00 Kali alginat
17. 3913 10 00 Amoni alginat
18. 3913 10 00 Canxi alginat
19. 3913 10 00 Propylen glycol alginat
20. 3913 90 00 Gôm Xanthan
XI. Các chất làm ẩm
1. 15 1520 Glycerol
2. 28 2835 39 90 Canxi dihydro diphosphat
XII. Các chất làm rắn chắc
1. 28 2827 20 Canxi clorua
2. 2833 29 00 Canxi sulfat
3. 2833
2833
22
22
90
10
Nhôm sulfat
4. 2833 30 00 Nhôm natri sulphat
5. 2833 30 00 Nhôm amoni sulphat
6. 2835 26 00 Monocanxi orthophosphat
7. 29
38
2918
3824
15
90
10
20
Canxi xitrat
8. 29 2918 16 00 Canxi gluconat
XIII. Các chất làm nhũ hóa
1. 21 2106 90 99 Mono và diglycerit của các axit béo
2. 28 2835 24 00 Trikali orthophosphat
3. 2835 29 60 Muối Amoni của axit phosphatidic
4. 2835 39 90 Dinatri diphosphat
5. 2835 39 90 Dikali diphosphat
6. 2835 39 90 Canxi polyphosphat
7. 29
38
2915
3824
70
90
30
20
Sorbitan Monostearat
8. 29
38
2915
3824
70
90
30
20
Sorbitan tristearat
9. 29 2917 19 00 Diocyl natri sulfosuxinat
10. 2918 13 00 Stearyl tartrat
11. 2918 15 90 Stearyl xitrat
12. 2940 00 00 Sucroza axetat isobutyrat
13. 38 3823
3824
19
90
90
20
Hỗn hợp giữa este của glyxerol với Axit axetic và Axit béo và
este của glyxerol với Axit tactric và Axit béo
14. 38
29
3823
3824
2918
19
90
11
90
20
00
Este của glycerol với Axit lactic và các axit béo
15. 38
29
3823
3824
2918
19
90
14
90
20
00
Este của glycerol với Axit xitric và axit béo
16. 38
29
3823
3824
2918
19
90
13
90
20
00
Este của glycerol với Axit diaxetyl tactaric và axit béo
17. 3824
2106
90
90
20
99
Sucroglyxerit
18. 38 3824 90 20 Este của polyglycerol và Axit béo
19. 3824 90 20 Glycerol Esters của nhựa cây
20. 3824 90 20 Muối của axit myristic, palmitic và stearic (NH4, Ca, K, Na)
21. 3824 90 20 Este của Sucroza với các axit béo
22. 3824
3824
90
90
90
20
Sorbitan Monolaurat
23. 3824
3824
90
90
90
20
Sorbitan Monooleat
24. 3824
3824
90
90
90
20
Sorbitan Monopalmitat
XIV. Phẩm màu
1. 26
28
32
2614
2823
3206
00
00
11
(19)
00
Titan dioxit
2. 28 2821 10 00 Sắt oxit, đen
3. 2821 10 00 Sắt oxit, đỏ
4. 2821 10 00 Sắt oxit, vàng
5. 29 2936 23 00 Vàng Riboflavin (Riboflavin) Riboflavin
6. 32 3203 00 10 Vàng Curcumin (Vàng nghệ)
7. 3203 00 10 Carmin
8. 3203 00 10 Clorophyl
9. 3203 00 10 Clorophyl phức đồng
10. 3203 00 10 Clorophyl phức đồng (muối Natri, kali của nó)
11. 3203 00 1009 Beta-caroten tổng hợp
12. 3203 00 1009 Caroten tự nhiên (chiết xuất từ thực vật)
13. 3203 00 1009 Chất chiết xuất từ Annatto
14. 3203 00 1009 Beta-Apo-Carotenal
15. 3203 00 10 Chất chiết xuất từ vỏ nho
16. 3204 12 00 Xanh lục bền (FCF)
17. 3204 12 00 Vàng Tartrazin (Tartrazin)
18. 3204 12 00 Vàng Quinolin
19. 3204
3204
12
17
00
90
Carmoisine
20. 3204 12 00 Đỏ Amaranth (Amaranth)
21. 3204 12 00 Đỏ Ponceau 4R (Ponceau 4R)
22. 3204 12 00 Vàng Erythrosin (Erythrosin)
23. 3204 12 00 Đỏ 2G
24. 3204 12 00 Đỏ Allura AC
25. 3204 12 00 Indigotin (Indigocarmine)
26. 3204 12 00 Xanh Brilliant FCF
27. 3204 12 00 Xanh S
28. 3204 12 00 Đen Brilliant PN
29. 3204 17 2090 Vàng Sunset FCF (Sunset Yellow FCF)
30. 3204 17 90
(20)
Este Metyl (hoặc Etyl) của axit Beta-Apo-8’-Carotenic
31. 3204 17 90
(20)
Canthaxanthin
32. 3204 Caramen nhóm I (không xử lý)
33. 3204 Nâu HT
XV. Các chất tạo bọt
1. 14 1404 90 90 Chất chiết xuất từ Quillaia
XVI. Các chất tạo phức kim loại
1. 15 1503 00 90 Oxystearin
2. 28 2835 39 90 Tetranatri diphosphat
3. 2835 39 90 Tetrakali diphosphat
4. 2835 39 90 Dimagie diphosphat
5. 2835 39 90 Pentanatri triphosphat
6. 2835 39 90 Pentakali triphosphat
7. 2835 39 90 Natri polyphosphat
8. 2835 39 90 Kali polyphosphat
9. 2835 39 90 Natri canxi polyphosphat
10. 29 2918 15 90 Isopropyl xitrat
11. 2918 16 00 Natri gluconat
12. 2918 16 00 Kali gluconat
13. 2922 49 90 Canxi Dinatri Etylen-Diamin-Tetra-axetat
14. 2922 49 90 Dinatri Etylen-Diamin-Tetra-axetat (EDTA)
XVII. Các chất tạo xốp
1. 28 2836 10 00 Amoni cacbonat
2. 2836 99 00 Natri cacbonat
XVII. Chất xử lý bột
1. 29 2927 00 10 Azodicacbonamit
XIX. Các chất tạo hương tự nhiên
1. 09 0910 20
30
00
00
Saffron (cây nghệ)
2. 13 1302 19 90 Các chiết xuất từ cây vani
3. 21 2106 90 82 Hương khói tự nhiên và các chiết xuất của nó
4. 2106 90 82 Hương liệu tự nhiên và các hương liệu giống tự nhiên
5. 33 3301 11-
99
10-
90
Tinh dầu họ quả cam quýt
6. 3301 19 10-
90
Dầu nguyệt quế anh đào
7. 3301 25 10-
90
Hương bạc hà
8. 3301 29 11 Hương quế
9. 3301 29 91 Các dầu gia vị và chiết xuất từ gia vị
10. 3301 29 91 Dầu hạnh nhân đắng
11. 3301 90 90 Tinh dầu quả tự nhiên
12. 3301 90 90 Dầu ớt
XX. Các chất tạo hương tổng hợp
1. 13 1301 90 90 Benzoin gum
2. 29 2902 19 00 Limonen, d-
3. 2905 22 00 Linalool
4. 2906 11 00 Menthol
5. 2906 21 00 Benzyl alcohol
6. 2907 29 00 Metyl benzyl, alpha-alcohol
7. 3307 41 44 Hương khói
8. 2909 30 00 Anethole, trans-
9. 2909 30 00 Anethol, beta-
10. 2909 30 00 Eugenyl metyl ete
11. 2909 50 00 Eugenol
12. 2912 19 00 Nonanal
13. 2912 19 00 Octanal
14. 2912 19 00 Citral
15. 2912 21 00 Benzadehyt
16. 2912 41 00 Vanillin
17. 2912 42 00 Etyl vanilin
18. 2914 23 00 Inonon, alpha
19. 2914 23 00 Inonon, beta
20. 2914 29 00 Carvon, d-
21. 2914 29 00 Carvon, l-
22. 2914 39 00 Metyl naphtyl, beta-keton
Tài liệu The New C Standard- P4 ppt
5.2.1.1 Trigraph sequences
232
C90
This definition is new in C99.
229
in this International Standard the term does not include other characters that are letters in other alphabets.
Commentary
All implementations are required to support the basic source character set to which this terminology applies.
Annex D lists those universal character names that can appear in identifiers. However, they are not referred
to as letters (although they may well be regarded as such in their native language).
The term letter assumes that the orthography (writing system) of a language has an alphabet. Some
792 orthography
orthographies, for instance Japanese, don’t have an alphabet as such (let alone the concept of upper- and
lowercase letters). Even when the orthography of a language does include characters that are considered
to be matching upper and lowercase letters by speakers of that language (e.g., æ and Æ, å and Å), the C
Standard does not define these characters to be letters.
C
++
The definition used in the C
++
Standard, 17.3.2.1.3 (the footnote applies to C90 only), implies this is also
true in C
++
.
Coding Guidelines
The term letter has a common usage meaning in a number of different languages. Developers do not often
use this term in its C Standard sense. Perhaps the safest approach for coding guideline documents to take is
to avoid use of this term completely.
230
The universal character name construct provides a way to name other characters.
Commentary
In theory all characters on planet Earth and beyond. In practice, those defined in ISO 10646.
28 ISO 10646
C90
Support for universal character names is new in C99.
Other Languages
Other language standards are slowly moving to support ISO 10646. Java supports a similar concept.
Common Implementations
Support for these characters is relatively new. It will take time before similarities between implementations
become apparent.
231
Forward references: universal character names (6.4.3), character constants (6.4.4.4), preprocessing direc-
tives (6.10), string literals (6.4.5), comments (6.4.9), string (7.1.1).
5.2.1.1 Trigraph sequences
232
trigraph se-
quences
replaced by
All occurrences in a source file Before any other processing takes place, each occurrence of one of the
following sequences of three characters (called trigraph sequences
12)
) are replaced with the corresponding
single character.
Commentary
Trigraphs were an invention of the C committee. They are a method of supporting the input (into source files,
not executing programs) and the printing of some C source characters in countries whose alphabets, and
keyboards, do not include them in their national character set. Digraphs, discussed elsewhere, are another
916 digraphs
sequence of characters that are replaced by a corresponding single character.
The \? escape sequence was introduced to allow sequences of ?s to occur within string literals.
895 string literal
syntax
The wording was changed by the response to DR #309.
June 24, 2009 v 1.2
5.2.1.1 Trigraph sequences
234
Other Languages
Until recently many computer languages did not attempt to be as worldly as C, requiring what might be called
an Ascii keyboard. Pascal specifies what it calls lexical alternatives for some lexical tokens. The character
sequences making up these lexical alternatives are only recognized in a context where they can form a single,
complete token.
Common Implementations
On the Apple MacIntosh host, the notation
’????’
is used to denote the unknown file type. Translators in
this environment often disable trigraphs by default to prevent unintended replacements from occurring.
233
trigraph se-
quences
mappings
??= # ??) ] ??! |
??( [ ??’ ^ ??< }
??/ \ ??< { ??- ~
Commentary
The above sequences were chosen to minimize the likelihood of breaking any existing, conforming, C source
code.
Other Languages
Many languages use a small subset, or none, of these problematic source characters, reducing the potential
severity of the problem. The Pascal standard specifies
(.
and
.)
as alternative lexical representations of
[
and ] respectively.
Common Implementations
Recognizing trigraph sequences entails a check against every character read in by the translator. Performance
profiling of translators has shown that a large percentage of time is spent in the lexer. A study by Waite
[1469]
found 41% of total translation time was spent in a handcrafted lexer (with little code optimization performed
by the translator). An automatically produced lexer, the lex tool was used, consumed 3 to 5 as much time.
One vendor, Borland, who used to take pride, and was known, for the speed at which their translators
operated, did not include trigraph processing in the main translator program. A stand-alone utility was
provided to perform trigraph processing. Those few programs that used trigraphs needed to be processed by
this utility, generating a temporary file that was processed by the main translator program. While using this
pre-preprocessor was a large overhead for programs that used trigraphs, performance was not degraded for
source code that did not contain them.
Usage
There are insufficient trigraphs in the visible form of the
.c
files to enable any meaningful analysis of the
usage of different trigraphs to be made.
234
No other trigraph sequences exist.trigraph se-
quences
no other
Commentary
The set of characters for which trigraphs were created to provide an alternative spelling are known, and
unlikely to be extended.
Coding Guidelines
Although no other trigraph sequences exist, sequences of two adjacent questions marks in string literals
may lead to confusion. Developers may be unsure about whether they represent a trigraph or not. Using the
escape sequence \? on at least one of these questions marks can help clarify the intent.
Example
1 char
*
unknown_trigraph = "??++";
2 char
*
cannot_be_trigraph = "?\? ";
v 1.2 June 24, 2009
5.2.1.2 Multibyte characters
238
Usage
The visible form of the
.c
files contained 593 (
.h
10) instances of two question marks (i.e.,
??
) in string
literals that were not followed by a character that would have created a trigraph sequence.
235
Each ? that does not begin one of the trigraphs listed above is not changed.
Commentary
Two ?s followed by any other character than those listed above is not a trigraph.
Common Implementations
No implementation is known to define any other sequence of ?s to be replaced by other characters.
Coding Guidelines
No other trigraph sequences are defined by the standard, have been notified for future addition to the standard,
or used in known implementations. Placing restrictions on other uses of other sequences of
?
s provides no
benefit.
236
EXAMPLE 1
??=define arraycheck(a,b) a??(b??) ??!??! b??(a??)
becomes
#define arraycheck(a,b) a[b] || b[a]
Commentary
This example was added by the response to DR #310 and is intended to show a common trigraph usage.
237
EXAMPLE 2 The following source line
printf("Eh???/n");
becomes (after replacement of the trigraph sequence ??/)
printf("Eh?\n");
Commentary
This illustrates the sometimes surprising consequences of trigraph processing.
5.2.1.2 Multibyte characters
238
The source character set may contain multibyte characters, used to represent members of the extended
multibyte
character
source contain
character set.
Commentary
The mapping from physical source file multibyte characters to the source character set occurs in translation
60 multibyte
character
phase 1. Whether multibyte characters are mapped to UCNs, single characters (if possible), or remain as
116 transla-
tion phase
1
multibyte characters depends on the model used by the implementation.
115 UCN
models of
C
++
The representations used for multibyte characters, in source code, invariably involve at least one character
that is not in the basic source character set:
2.1p1
Any source file character not in the basic source character set (2.2) is replaced by the universal-character-name
that designates that character.
The C
++
Standard does not discuss the issue of a translator having to process multibyte characters during
translation. However, implementations may choose to replace such characters with a corresponding universal-
character-name.
June 24, 2009 v 1.2
5.2.1.2 Multibyte characters
241
Other Languages
Most programming languages do not contain the concept of multibyte characters.
Common Implementations
Support for multibyte characters in identifiers, using a shift state encoding, is sometimes seen as an ex-
tension. Support for multibyte characters in this context using UCNs is new in C99. The most common
universal
charac-
ter name
syntax
815
implementations have been created to support the various Japanese character sets.
Coding Guidelines
The standard does not define how multibyte characters are to be represented. Any program that contains
them is dependent on a particular implementation to do the right thing. Converting programs that existed
before support for universal character names became available may not be economically viable.
Some coding guideline documents recommend against the use of characters that are not specified in the C
Standard. Simply prohibiting multibyte characters because they rely on implementation-defined behavior
ignores the cost/benefit issues applicable to the developers who need to read the source. These are complex
issues for which your author has insufficient experience with which to frame any applicable guideline
recommendations.
239
The execution character set may also contain multibyte characters, which need not have the same encoding
as for the source character set.
Commentary
Multibyte characters could be read from a file during program execution, or even created by assigning byte
values to contiguous array elements. These multibyte sequences could then be interpreted by various library
functions as representing certain (wide) characters.
The execution character set need not be fixed at translation time. A program’s locale can be changed
at execution time (by a call to the
setlocale
function). Such a change of locale can alter how multibyte
characters are interpreted by a library function.
C
++
There is no explicit statement about such behavior being permitted in the C
++
Standard. The C header
<wchar.h>
(specified in Amendment 1 to C90) is included by reference and so the support it defines for
multibyte characters needs to be provided by C
++
implementations.
Other Languages
Most languages do not include library functions for handling multibyte characters.
Coding Guidelines
Use of multibyte characters during program execution is an applications issue that is outside the scope of
these coding guidelines.
240
For both character sets, the following shall hold:
Commentary
This is a set of requirements that applies to an implementation. It is the minimum set of guaranteed
requirements that a program can rely on.
Coding Guidelines
The set of requirements listed in the following C-sentences is fairly general. Dealing with implementations
that do not meet the requirements listed in these sentences is outside the scope of these coding guidelines.
241
— The basic character set shall be present and each character shall be encoded as a single byte.
v 1.2 June 24, 2009
5.2.1.2 Multibyte characters
243
Commentary
This is a requirement on the implementation. It prevents an implementation from being purely multibyte-
based. The members of the basic character set are guaranteed to always be available and fit in a byte.
222 basic char-
acter set
fit in a byte
Common Implementations
An implementation that includes support for an extended character set might choose to define
CHAR_BIT
to
216 extended
character set
307 CHAR_BIT
macro
be 16 (most of the commonly used characters in ISO 10646 are representable in 16 bits, each in UTF-16; at
28 ISO 10646
28 UTF-16
least those likely to be encountered outside of academic research and the traditional Chinese written on Hong
Kong). Alternatively, an implementation may use an encoding where the members of the basic character set
are representable in a byte, but some members of the extended character set require more than one byte for
their encoding. One such representation is UTF-8.
28 UTF-8
242
— The presence, meaning, and representation of any additional members is locale-specific.
Commentary
On program startup the execution locale is the
"C"
locale. During execution it can be set under program
control. The standard is silent on what the translation time locale might be.
Common Implementations
The full Ascii character set is used by a large number of implementations.
Coding Guidelines
It often comes as a surprise to developers to learn what characters the C Standard does not require to be
provided by an implementation. Source code readability could be affected if any of these additional members
appear within comments and cannot be meaningfully displayed. Balancing the benefits of using additional
members against the likelihood of not being able to display them is a management issue.
The use of any additional members during the execution of a program will be driven by the user require-
ments of the application. This issue is outside the scope of these coding guidelines.
243
— A multibyte character set may have a state-dependent encoding, wherein each sequence of multibyte
multibyte
character
state-dependent
encoding
shift state
characters begins in an initial shift state and enters other locale-specific shift states when specific multibyte
characters are encountered in the sequence.
Commentary
State-dependent encodings are essentially finite state machines. When a state encoding, or any multibyte
encoding, is being used the number of characters in a string literal is not the same as the number of bytes
encountered before the null character. There is no requirement that the sequence of shift states and characters
representing an extended character be unique.
215 extended
characters
There are situations where the visual appearance of two or more characters is considered to be a single
combining
characters
character. For instance, (using ISO 10646 as the example encoding), the two characters LATIN SMALL
LETTER O (U+006F) followed by COMBINING CIRCUMFLEX ACCENT (U+0302) represent the grapheme
cluster (the ISO 10646 term
[334]
for what might be considered a user character)
ô
not the two characters
o ^
. Some languages use grapheme clusters that require more than one combining character, for instance
ô
¯
. Unicode (not ISO 10646) defines a canonical accent ordering to handle sequences of these combining
characters. The so-called combining characters are defined to combine with the character that comes
immediately before them in the character stream. For backwards compatibility with other character encodings,
and ease of conversion, the ISO 10646 Standard provides explicit codes for some accent characters; for
instance, LATIN SMALL LETTER O WITH CIRCUMFLEX (U+00F4) also denotes ô.
A character that is capable of standing alone, the
o
above, is known as a base character. A character that
modifies a base character, the
ô
above, is known as a combining character (the visible form of some combining
characters are called diacritic characters). Most character encodings do not contain any combining characters,
and those that do contain them rarely specify whether they should occur before or after the modified base
June 24, 2009 v 1.2
5.2.1.2 Multibyte characters
243
character. Claims that a particular standard require the combining character to occur before the base character
it modifies may be based on a misunderstanding. For instance, ISO/IEC 6937 specifies a single-byte
encoding for base characters and a double-byte encoding for some visual combinations of (diacritic + base)
Latin letter. These double-byte encodings are precomposed in the sense that they represent a single character;
there is no single-byte encoding for the diacritic character, and the representation of the second byte happens
to be the same as that of the single-byte representation of the corresponding base character (e.g., 0xC14F
represents LATIN CAPITAL LETTER O WITH GRAVE and 0xC16F represents LATIN SMALL LETTER O
WITH GRAVE).
C90
The C90 Standard specified implementation-defined shift states rather than locale-specific shift states.
C
++
The definition of multibyte character, 1.3.8, says nothing about encoding issues (other than that more than
one byte may be used). The definition of multibyte strings, 17.3.2.1.3.2, requires the multibyte characters to
begin and end in the initial shift state.
Common Implementations
Most methods for state-dependent encoding are based on ISO/IEC 2022:1994 (identical to the standard
ISO 2022
ECMA-35 “Character Code Structure and Extension Techniques”, freely available from their Web site,
http://www.ecma.ch
). This uses a different structure than that specified in ISO/IEC 10646–1. The
encoding method defined by ISO 2022 supports both 7-bit and 8-bit codes. It divides these codes up into
control characters (known as C0 and C1) and graphics characters (known as G0, G1, G2, and G3). In the
initial shift state the C0 and G0 characters are in effect.
Table 243.1:
Commonly seen ISO 2022 Control Characters. The alternative values for SS2 and SS3 are only available for 8-bit
codes.
Name Acronym Code Value Meaning
Escape ESC 0x1b Escape
Shift-In SI 0x0f Shift to the G0 set
Shift-Out SO 0x0e Shift to the G1 set
Locking-Shift 2 LS2 ESC 0x6e Shift to the G2 set
Locking-Shift 3 LS3 ESC 0x6f Shift to the G3 set
Single-Shift 2 SS2 ESC 0x4e, or 0x8e Next character only is in G2
Single-Shift 3 SS3 ESC 0x4f, or 0x8f Next character only is in G3
Some of the control codes and their values are listed in Table 243.1. The codes SI, SO, LS2, and LS3 are
known as locking shifts. They cause a change of state that lasts until the next control code is encountered. A
stream that uses locking shifts is said to use stateful encoding.
ISO 2022 specifies an encoding method: it does not specify what the values within the range used for
graphic characters represent. This role is filled by other standards, such as ISO 8859. A C implementation
ISO 8859 24
that supports a state-dependent encoding chooses which character sets are available in each state that it
supports (the C Standard only defines the character set for the initial shift state).
Table 243.2: An implementation where G1 is ISO 8859–1, and G2 is ISO 8891–7 (Greek).
Encoded values 0x62 0x63 0x64 0x0e 0xe6 0x1b 0x6e 0xe1 0xe2 0xe3 0x0f
Control character SO LS2 SI
Graphic character a b c æ α β γ
Having to rely on implicit knowledge of what character set is intended to be used for G1, G2, and so on, is
not always satisfactory. A method of specifying the character sets in the sequence of bytes is needed. The
v 1.2 June 24, 2009
5.2.1.2 Multibyte characters
244
ESC control code provides this functionality by using two or more following bytes to specify the character
set (ISO maintains a registry of coded character sets). It is possible to change between character sets without
any intervening characters. Table 243.3 lists some of the commonly used Japanese character sets.
C source code written by Japanese developers probably has the highest usage of shift sequences. There are
several JIS (Japanese Industrial Standard) documents specifying representations for such sequences. Shift
JIS (developed by Microsoft) belies its name and does not involve shift sequences that use a state-dependent
encoding.
Table 243.3: ESC codes for some of the character sets used in Japanese.
Character Set Byte Encoding Visible Ascii Representation
JIS C 6226–1978 1B 24 40 <ESC> $ @
JIS X 0208–1983 1B 24 42 <ESC> $ B
JIS X 0208–1990 1B 26 40 1B 24 42 <ESC> & @ <ESC> $ B
JIS X 0212–1990 1B 24 28 44 <ESC> $ ( D
JIS-Roman 1B 28 4A <ESC> ( J
Ascii 1B 28 42 <ESC> ( B
Half width Katakana 1B 28 49 <ESC> ( I
Table 243.4: A JIS encoding of the character sequence かな漢字(“kana and kanji”).
Encoded values 0x1b 0x24 0x42 0x242b 0x244a 0x3441 0x3b7a 0x1b 0x28 0x4a
Control character <ESC> $ B <ESC> ( J
Graphic character か な 漢 字
Ascii characters $+ $J 4A ;z
Coding Guidelines
Developers do not need to remember the numerical values for extended characters. The editor, or program
development environment, used to create the source code invariably looks after the details (generating any
escape sequences and the appropriate byte values for the extended character selected by the developer). How
these tools decide to encode multibyte character sequences is outside the scope of these coding guidelines.
It is usually possible to express an extended character in a minimal number of bytes using a particular
state-dependent encoding. The extent to which developers might create fixed-length data structures on the
assumption that multibyte characters will not contain any redundant shift sequences is outside the scope of
2017 footnote
152
this book. The value of the
MB_LEN_MAX
macro places an upper limit on the number of possible redundant
313
MB_LEN_MAX
shift sequences.
Example
1 #include <stdio.h>
2
3 char
*
p1 = "^[$B$3$l$OF|K\8lI=8=^[(J"; /
*
^[$BF|K\8lJ8;zNs^[(J
*
/
4 char
*
p2 = "^[$B$3$l$OF|1Q^[(Jmixed^[$BJ8;zNs^[(J"; /
*
Ascii + ^[$BF|K\8l^[(J
*
/
5 char
*
p3 = "^[$B$3$l$OH>3Q^[(J^N6@6E^O^[$B$H^[(JASCII^[$B:.9g^[(J";
6
7 int main(void)
8 {
9 printf("%s^[$B$H^[(J%s^[$B$H^[(J%s\n", p1, p2, p3);
10 }
244
While in the initial shift state, all single-byte characters retain their usual interpretation and do not alter the
shift state.
June 24, 2009 v 1.2
5.2.1.2 Multibyte characters
247
Commentary
The implementation of a stateful encoding has to pick a special character, which is not in the basic character
set, to indicate the start of a shift sequence. When not in the initial shift state, it is very unlikely that single
bytes will be interpreted the same way as when in the initial shift state.
C
++
The C
++
Standard does not explicitly specify this requirement.
Common Implementations
The ESC character, 0x1b, is commonly used to indicate the start of a shift sequence.
245
12) The trigraph sequences enable the input of characters that are not defined in the Invariant Code Set as
footnote
12
described in ISO/IEC 646, which is a subset of the seven-bit US ASCII code set.
Commentary
When trigraphs are used, it is possible to write C source code that contains only those characters that are in
the Invariant Code Set of ISO/IEC 646.
C90
The C90 Standard explicitly referred to the 1983 version of ISO/IEC 646 standard.
246
The interpretation for subsequent bytes in the sequence is a function of the current shift state.
Commentary
This wording is really a suggestion for the design of multibyte shift states (it is effectively describing the
processing performed by finite state machines, which is what a shift state encoding is). Being able to interpret
a byte independent of the current shift state would indicate that the sequence of bytes that resulted in the
current state were redundant.
The specification of the macro
MB_LEN_MAX
requires that the maximum number of bytes needed to handle
MB_LEN_MAX
313
a supported multibyte character be provided. It may, or may not, be possible to represent some redundant
shift sequence within the available bytes. The standard does not explicitly require or prohibit support for
redundant shift sequences.
C
++
A set of virtual functions for handling state-dependent encodings, during program execution, is discussed in
Clause 22, Localization library. But, this requirement is not specified.
Common Implementations
Implementations usually use a simple finite state machine, often automatically generated, to handle the
mapping of shift states into their execution character value. The extent to which sequences of redundant shift
sequences is supported will depend on the implementation.
Coding Guidelines
The sequence of bytes in a shift sequence are usually generated via some automated process. For this reason
a guideline recommending against the use of redundant shift sequences is unlikely to be enforceable, and
none is given.
247
— A byte with all bits zero shall be interpreted as a null character independent of shift state.byte
all bits zero
Commentary
This is a requirement on the implementation. This requirement makes it possible to search for the end of
a string without needing any knowledge of the encoding that has been used. For instance, string-handling
functions can copy multibyte characters without interpreting their contents.
v 1.2 June 24, 2009
5.2.1.2 Multibyte characters
250
C
++
2.2p3
. . . , plus a null character (respectively, null wide character), whose representation has all zero bits.
While the C
++
Standard does not rule out the possibility of all bits zero having another interpretation in other
contexts, other requirements (17.3.2.1.3.1p1 and 17.3.2.1.3.2p1) restrict these other contexts, as do existing
character set encodings.
248
— A byte with all bits zero shall not occur in the second or subsequent bytes of a Such a byte shall not occur
multibyte
character
end in initial
shift state
as part of any other multibyte character.
Commentary
This is a requirement on the implementation. The effect of this requirement is that partial multibyte characters
cannot be created (otherwise the behavior is undefined). A null character can only exist outside of the
sequence of bytes making up a multibyte character. For source files this requirement follows from the
requirement to end in the initial shift state. During program execution this requirement means that library
250 token
shift state
functions processing multibyte characters do not need to concern themselves with handling partial multibyte
characters at the end of a string.
The wording was changed by the response to DR #278 (it is a requirement on the implementation that
forbids a two-byte character from having a first, or any, byte that is zero).
C
++
This requirement can be deduced from the definition of null terminated byte strings, 17.3.2.1.3.1p1, and null
terminated multibyte strings, 17.3.2.1.3.2p1.
249
For source files, the following shall hold:
Commentary
These C-sentences specify requirements on a program. A program that violates them exhibits undefined
behavior.
Use of multibyte characters can involve locale-specific and implementation-defined behaviors. A source
44 locale-
specific
behavior
42
implementation-
defined
behavior
file does not affect the conformance status of any program built using it, provided its use of multibyte
characters either involves locale-specific behavior or the implementation-defined behavior does not affect
program output (e.g., they appear in comments).
Coding Guidelines
The creation of multibyte characters within source files is usually handled by an editor. The developer
involvement in the process being the selection of the appropriate character. In such an environment the
developer has no control over the byte sequences used. A guideline recommending against such usage is
likely to be impractical to implement and none is given.
250
— An identifier, comment, string literal, character constant, or header name shall begin and end in the initial
token
shift state
shift state.
Commentary
These are the only tokens that can meaningfully contain a multibyte character. A token containing a multibyte
character should not affect the processing of subsequent tokens. Without this requirement a token that did
not end in the initial shift state would be likely to affect the processing of subsequent tokens.
C90
Support for multibyte characters in identifiers is new in C99.
June 24, 2009 v 1.2
5.2.2 Character display semantics
252
C
++
In C
++
all characters are mapped to the source character set in translation phase 1. Any shift state encoding
transla-
tion phase
1
116
will not exist after translation phase 1, so the C requirement is not applicable to C
++
source files.
Coding Guidelines
The fact that many multibyte sequences are created automatically, by an editor, can make it very difficult for
a developer to meet this requirement. A developer is unlikely to intentionally end a preprocessing token,
created using a multibyte sequence, in other than the initial state. A coding guideline is unlikely to be of
benefit.
251
— An identifier, comment, string literal, character constant, or header name shall consist of a sequence of
valid multibyte characters.
Commentary
What is a valid multibyte character? This decision can only be made by a translator, should it chose to accept
multibyte characters.
In C90 it was relatively easy to lexically process a source file containing multibyte characters. The
context in which these characters occurred often meant that a lexer simply had to look for the character that
terminated the kind of token being processed (unless that character occurred as part of a multibyte character).
Identifier tokens do not have a single termination character. This means that it is not possible to generalise
support for multibyte characters in identifiers across all translators. It is possible that source containing a
multibyte character identifier supported by one translator will cause another translator to issue a diagnostic.
C90
Support for multibyte characters in identifiers is new in C99.
C
++
In C
++
all characters are mapped to the source character set in translation phase 1. Any shift state encoding
transla-
tion phase
1
116
will not exist after translation phase 1, so the C requirement is not applicable to C
++
source files.
Coding Guidelines
In some cases source files can contain multibyte characters and be translated by translators that have no
knowledge of the structure of these multibyte characters. The developer is relying on the translator ignoring
them in comments containing their native language, or simply copying the character sequence in a string
literal into the program image. In other cases, for instance identifiers, knowledge of the encoding used for
the multibyte character set is likely to be needed by a translator.
Ensuring that a translator capable of handling any multibyte characters occurring in the source is used, is a
configuration-management issue that is outside the scope of these coding guidelines.
5.2.2 Character display semantics
Commentary
There is no guarantee that a character display will exist on any hosted implementation. If such a device is
character display
semantics
supported by an implementation, this clause specifies its attributes.
C
++
Clause 18 mentions “display as a wstring” in Notes:. But, there is no other mention of display semantics
anywhere in the standard.
Common Implementations
Most Unix-based environments contain a database of terminal capabilities, the so-called termcap database.
[1332]
termcap
database
This database provides information to the host on a large number of terminal capabilities and characteristics.
Knowing the display device currently being used (this usually relies on the user setting an environment
variable) enables the database to be queried for device attribute information. This information can then be
used by an application to handle its output to display devices. There is a similar database of information on
printer characteristics.
v 1.2 June 24, 2009
232
C90
This definition is new in C99.
229
in this International Standard the term does not include other characters that are letters in other alphabets.
Commentary
All implementations are required to support the basic source character set to which this terminology applies.
Annex D lists those universal character names that can appear in identifiers. However, they are not referred
to as letters (although they may well be regarded as such in their native language).
The term letter assumes that the orthography (writing system) of a language has an alphabet. Some
792 orthography
orthographies, for instance Japanese, don’t have an alphabet as such (let alone the concept of upper- and
lowercase letters). Even when the orthography of a language does include characters that are considered
to be matching upper and lowercase letters by speakers of that language (e.g., æ and Æ, å and Å), the C
Standard does not define these characters to be letters.
C
++
The definition used in the C
++
Standard, 17.3.2.1.3 (the footnote applies to C90 only), implies this is also
true in C
++
.
Coding Guidelines
The term letter has a common usage meaning in a number of different languages. Developers do not often
use this term in its C Standard sense. Perhaps the safest approach for coding guideline documents to take is
to avoid use of this term completely.
230
The universal character name construct provides a way to name other characters.
Commentary
In theory all characters on planet Earth and beyond. In practice, those defined in ISO 10646.
28 ISO 10646
C90
Support for universal character names is new in C99.
Other Languages
Other language standards are slowly moving to support ISO 10646. Java supports a similar concept.
Common Implementations
Support for these characters is relatively new. It will take time before similarities between implementations
become apparent.
231
Forward references: universal character names (6.4.3), character constants (6.4.4.4), preprocessing direc-
tives (6.10), string literals (6.4.5), comments (6.4.9), string (7.1.1).
5.2.1.1 Trigraph sequences
232
trigraph se-
quences
replaced by
All occurrences in a source file Before any other processing takes place, each occurrence of one of the
following sequences of three characters (called trigraph sequences
12)
) are replaced with the corresponding
single character.
Commentary
Trigraphs were an invention of the C committee. They are a method of supporting the input (into source files,
not executing programs) and the printing of some C source characters in countries whose alphabets, and
keyboards, do not include them in their national character set. Digraphs, discussed elsewhere, are another
916 digraphs
sequence of characters that are replaced by a corresponding single character.
The \? escape sequence was introduced to allow sequences of ?s to occur within string literals.
895 string literal
syntax
The wording was changed by the response to DR #309.
June 24, 2009 v 1.2
5.2.1.1 Trigraph sequences
234
Other Languages
Until recently many computer languages did not attempt to be as worldly as C, requiring what might be called
an Ascii keyboard. Pascal specifies what it calls lexical alternatives for some lexical tokens. The character
sequences making up these lexical alternatives are only recognized in a context where they can form a single,
complete token.
Common Implementations
On the Apple MacIntosh host, the notation
’????’
is used to denote the unknown file type. Translators in
this environment often disable trigraphs by default to prevent unintended replacements from occurring.
233
trigraph se-
quences
mappings
??= # ??) ] ??! |
??( [ ??’ ^ ??< }
??/ \ ??< { ??- ~
Commentary
The above sequences were chosen to minimize the likelihood of breaking any existing, conforming, C source
code.
Other Languages
Many languages use a small subset, or none, of these problematic source characters, reducing the potential
severity of the problem. The Pascal standard specifies
(.
and
.)
as alternative lexical representations of
[
and ] respectively.
Common Implementations
Recognizing trigraph sequences entails a check against every character read in by the translator. Performance
profiling of translators has shown that a large percentage of time is spent in the lexer. A study by Waite
[1469]
found 41% of total translation time was spent in a handcrafted lexer (with little code optimization performed
by the translator). An automatically produced lexer, the lex tool was used, consumed 3 to 5 as much time.
One vendor, Borland, who used to take pride, and was known, for the speed at which their translators
operated, did not include trigraph processing in the main translator program. A stand-alone utility was
provided to perform trigraph processing. Those few programs that used trigraphs needed to be processed by
this utility, generating a temporary file that was processed by the main translator program. While using this
pre-preprocessor was a large overhead for programs that used trigraphs, performance was not degraded for
source code that did not contain them.
Usage
There are insufficient trigraphs in the visible form of the
.c
files to enable any meaningful analysis of the
usage of different trigraphs to be made.
234
No other trigraph sequences exist.trigraph se-
quences
no other
Commentary
The set of characters for which trigraphs were created to provide an alternative spelling are known, and
unlikely to be extended.
Coding Guidelines
Although no other trigraph sequences exist, sequences of two adjacent questions marks in string literals
may lead to confusion. Developers may be unsure about whether they represent a trigraph or not. Using the
escape sequence \? on at least one of these questions marks can help clarify the intent.
Example
1 char
*
unknown_trigraph = "??++";
2 char
*
cannot_be_trigraph = "?\? ";
v 1.2 June 24, 2009
5.2.1.2 Multibyte characters
238
Usage
The visible form of the
.c
files contained 593 (
.h
10) instances of two question marks (i.e.,
??
) in string
literals that were not followed by a character that would have created a trigraph sequence.
235
Each ? that does not begin one of the trigraphs listed above is not changed.
Commentary
Two ?s followed by any other character than those listed above is not a trigraph.
Common Implementations
No implementation is known to define any other sequence of ?s to be replaced by other characters.
Coding Guidelines
No other trigraph sequences are defined by the standard, have been notified for future addition to the standard,
or used in known implementations. Placing restrictions on other uses of other sequences of
?
s provides no
benefit.
236
EXAMPLE 1
??=define arraycheck(a,b) a??(b??) ??!??! b??(a??)
becomes
#define arraycheck(a,b) a[b] || b[a]
Commentary
This example was added by the response to DR #310 and is intended to show a common trigraph usage.
237
EXAMPLE 2 The following source line
printf("Eh???/n");
becomes (after replacement of the trigraph sequence ??/)
printf("Eh?\n");
Commentary
This illustrates the sometimes surprising consequences of trigraph processing.
5.2.1.2 Multibyte characters
238
The source character set may contain multibyte characters, used to represent members of the extended
multibyte
character
source contain
character set.
Commentary
The mapping from physical source file multibyte characters to the source character set occurs in translation
60 multibyte
character
phase 1. Whether multibyte characters are mapped to UCNs, single characters (if possible), or remain as
116 transla-
tion phase
1
multibyte characters depends on the model used by the implementation.
115 UCN
models of
C
++
The representations used for multibyte characters, in source code, invariably involve at least one character
that is not in the basic source character set:
2.1p1
Any source file character not in the basic source character set (2.2) is replaced by the universal-character-name
that designates that character.
The C
++
Standard does not discuss the issue of a translator having to process multibyte characters during
translation. However, implementations may choose to replace such characters with a corresponding universal-
character-name.
June 24, 2009 v 1.2
5.2.1.2 Multibyte characters
241
Other Languages
Most programming languages do not contain the concept of multibyte characters.
Common Implementations
Support for multibyte characters in identifiers, using a shift state encoding, is sometimes seen as an ex-
tension. Support for multibyte characters in this context using UCNs is new in C99. The most common
universal
charac-
ter name
syntax
815
implementations have been created to support the various Japanese character sets.
Coding Guidelines
The standard does not define how multibyte characters are to be represented. Any program that contains
them is dependent on a particular implementation to do the right thing. Converting programs that existed
before support for universal character names became available may not be economically viable.
Some coding guideline documents recommend against the use of characters that are not specified in the C
Standard. Simply prohibiting multibyte characters because they rely on implementation-defined behavior
ignores the cost/benefit issues applicable to the developers who need to read the source. These are complex
issues for which your author has insufficient experience with which to frame any applicable guideline
recommendations.
239
The execution character set may also contain multibyte characters, which need not have the same encoding
as for the source character set.
Commentary
Multibyte characters could be read from a file during program execution, or even created by assigning byte
values to contiguous array elements. These multibyte sequences could then be interpreted by various library
functions as representing certain (wide) characters.
The execution character set need not be fixed at translation time. A program’s locale can be changed
at execution time (by a call to the
setlocale
function). Such a change of locale can alter how multibyte
characters are interpreted by a library function.
C
++
There is no explicit statement about such behavior being permitted in the C
++
Standard. The C header
<wchar.h>
(specified in Amendment 1 to C90) is included by reference and so the support it defines for
multibyte characters needs to be provided by C
++
implementations.
Other Languages
Most languages do not include library functions for handling multibyte characters.
Coding Guidelines
Use of multibyte characters during program execution is an applications issue that is outside the scope of
these coding guidelines.
240
For both character sets, the following shall hold:
Commentary
This is a set of requirements that applies to an implementation. It is the minimum set of guaranteed
requirements that a program can rely on.
Coding Guidelines
The set of requirements listed in the following C-sentences is fairly general. Dealing with implementations
that do not meet the requirements listed in these sentences is outside the scope of these coding guidelines.
241
— The basic character set shall be present and each character shall be encoded as a single byte.
v 1.2 June 24, 2009
5.2.1.2 Multibyte characters
243
Commentary
This is a requirement on the implementation. It prevents an implementation from being purely multibyte-
based. The members of the basic character set are guaranteed to always be available and fit in a byte.
222 basic char-
acter set
fit in a byte
Common Implementations
An implementation that includes support for an extended character set might choose to define
CHAR_BIT
to
216 extended
character set
307 CHAR_BIT
macro
be 16 (most of the commonly used characters in ISO 10646 are representable in 16 bits, each in UTF-16; at
28 ISO 10646
28 UTF-16
least those likely to be encountered outside of academic research and the traditional Chinese written on Hong
Kong). Alternatively, an implementation may use an encoding where the members of the basic character set
are representable in a byte, but some members of the extended character set require more than one byte for
their encoding. One such representation is UTF-8.
28 UTF-8
242
— The presence, meaning, and representation of any additional members is locale-specific.
Commentary
On program startup the execution locale is the
"C"
locale. During execution it can be set under program
control. The standard is silent on what the translation time locale might be.
Common Implementations
The full Ascii character set is used by a large number of implementations.
Coding Guidelines
It often comes as a surprise to developers to learn what characters the C Standard does not require to be
provided by an implementation. Source code readability could be affected if any of these additional members
appear within comments and cannot be meaningfully displayed. Balancing the benefits of using additional
members against the likelihood of not being able to display them is a management issue.
The use of any additional members during the execution of a program will be driven by the user require-
ments of the application. This issue is outside the scope of these coding guidelines.
243
— A multibyte character set may have a state-dependent encoding, wherein each sequence of multibyte
multibyte
character
state-dependent
encoding
shift state
characters begins in an initial shift state and enters other locale-specific shift states when specific multibyte
characters are encountered in the sequence.
Commentary
State-dependent encodings are essentially finite state machines. When a state encoding, or any multibyte
encoding, is being used the number of characters in a string literal is not the same as the number of bytes
encountered before the null character. There is no requirement that the sequence of shift states and characters
representing an extended character be unique.
215 extended
characters
There are situations where the visual appearance of two or more characters is considered to be a single
combining
characters
character. For instance, (using ISO 10646 as the example encoding), the two characters LATIN SMALL
LETTER O (U+006F) followed by COMBINING CIRCUMFLEX ACCENT (U+0302) represent the grapheme
cluster (the ISO 10646 term
[334]
for what might be considered a user character)
ô
not the two characters
o ^
. Some languages use grapheme clusters that require more than one combining character, for instance
ô
¯
. Unicode (not ISO 10646) defines a canonical accent ordering to handle sequences of these combining
characters. The so-called combining characters are defined to combine with the character that comes
immediately before them in the character stream. For backwards compatibility with other character encodings,
and ease of conversion, the ISO 10646 Standard provides explicit codes for some accent characters; for
instance, LATIN SMALL LETTER O WITH CIRCUMFLEX (U+00F4) also denotes ô.
A character that is capable of standing alone, the
o
above, is known as a base character. A character that
modifies a base character, the
ô
above, is known as a combining character (the visible form of some combining
characters are called diacritic characters). Most character encodings do not contain any combining characters,
and those that do contain them rarely specify whether they should occur before or after the modified base
June 24, 2009 v 1.2
5.2.1.2 Multibyte characters
243
character. Claims that a particular standard require the combining character to occur before the base character
it modifies may be based on a misunderstanding. For instance, ISO/IEC 6937 specifies a single-byte
encoding for base characters and a double-byte encoding for some visual combinations of (diacritic + base)
Latin letter. These double-byte encodings are precomposed in the sense that they represent a single character;
there is no single-byte encoding for the diacritic character, and the representation of the second byte happens
to be the same as that of the single-byte representation of the corresponding base character (e.g., 0xC14F
represents LATIN CAPITAL LETTER O WITH GRAVE and 0xC16F represents LATIN SMALL LETTER O
WITH GRAVE).
C90
The C90 Standard specified implementation-defined shift states rather than locale-specific shift states.
C
++
The definition of multibyte character, 1.3.8, says nothing about encoding issues (other than that more than
one byte may be used). The definition of multibyte strings, 17.3.2.1.3.2, requires the multibyte characters to
begin and end in the initial shift state.
Common Implementations
Most methods for state-dependent encoding are based on ISO/IEC 2022:1994 (identical to the standard
ISO 2022
ECMA-35 “Character Code Structure and Extension Techniques”, freely available from their Web site,
http://www.ecma.ch
). This uses a different structure than that specified in ISO/IEC 10646–1. The
encoding method defined by ISO 2022 supports both 7-bit and 8-bit codes. It divides these codes up into
control characters (known as C0 and C1) and graphics characters (known as G0, G1, G2, and G3). In the
initial shift state the C0 and G0 characters are in effect.
Table 243.1:
Commonly seen ISO 2022 Control Characters. The alternative values for SS2 and SS3 are only available for 8-bit
codes.
Name Acronym Code Value Meaning
Escape ESC 0x1b Escape
Shift-In SI 0x0f Shift to the G0 set
Shift-Out SO 0x0e Shift to the G1 set
Locking-Shift 2 LS2 ESC 0x6e Shift to the G2 set
Locking-Shift 3 LS3 ESC 0x6f Shift to the G3 set
Single-Shift 2 SS2 ESC 0x4e, or 0x8e Next character only is in G2
Single-Shift 3 SS3 ESC 0x4f, or 0x8f Next character only is in G3
Some of the control codes and their values are listed in Table 243.1. The codes SI, SO, LS2, and LS3 are
known as locking shifts. They cause a change of state that lasts until the next control code is encountered. A
stream that uses locking shifts is said to use stateful encoding.
ISO 2022 specifies an encoding method: it does not specify what the values within the range used for
graphic characters represent. This role is filled by other standards, such as ISO 8859. A C implementation
ISO 8859 24
that supports a state-dependent encoding chooses which character sets are available in each state that it
supports (the C Standard only defines the character set for the initial shift state).
Table 243.2: An implementation where G1 is ISO 8859–1, and G2 is ISO 8891–7 (Greek).
Encoded values 0x62 0x63 0x64 0x0e 0xe6 0x1b 0x6e 0xe1 0xe2 0xe3 0x0f
Control character SO LS2 SI
Graphic character a b c æ α β γ
Having to rely on implicit knowledge of what character set is intended to be used for G1, G2, and so on, is
not always satisfactory. A method of specifying the character sets in the sequence of bytes is needed. The
v 1.2 June 24, 2009
5.2.1.2 Multibyte characters
244
ESC control code provides this functionality by using two or more following bytes to specify the character
set (ISO maintains a registry of coded character sets). It is possible to change between character sets without
any intervening characters. Table 243.3 lists some of the commonly used Japanese character sets.
C source code written by Japanese developers probably has the highest usage of shift sequences. There are
several JIS (Japanese Industrial Standard) documents specifying representations for such sequences. Shift
JIS (developed by Microsoft) belies its name and does not involve shift sequences that use a state-dependent
encoding.
Table 243.3: ESC codes for some of the character sets used in Japanese.
Character Set Byte Encoding Visible Ascii Representation
JIS C 6226–1978 1B 24 40 <ESC> $ @
JIS X 0208–1983 1B 24 42 <ESC> $ B
JIS X 0208–1990 1B 26 40 1B 24 42 <ESC> & @ <ESC> $ B
JIS X 0212–1990 1B 24 28 44 <ESC> $ ( D
JIS-Roman 1B 28 4A <ESC> ( J
Ascii 1B 28 42 <ESC> ( B
Half width Katakana 1B 28 49 <ESC> ( I
Table 243.4: A JIS encoding of the character sequence かな漢字(“kana and kanji”).
Encoded values 0x1b 0x24 0x42 0x242b 0x244a 0x3441 0x3b7a 0x1b 0x28 0x4a
Control character <ESC> $ B <ESC> ( J
Graphic character か な 漢 字
Ascii characters $+ $J 4A ;z
Coding Guidelines
Developers do not need to remember the numerical values for extended characters. The editor, or program
development environment, used to create the source code invariably looks after the details (generating any
escape sequences and the appropriate byte values for the extended character selected by the developer). How
these tools decide to encode multibyte character sequences is outside the scope of these coding guidelines.
It is usually possible to express an extended character in a minimal number of bytes using a particular
state-dependent encoding. The extent to which developers might create fixed-length data structures on the
assumption that multibyte characters will not contain any redundant shift sequences is outside the scope of
2017 footnote
152
this book. The value of the
MB_LEN_MAX
macro places an upper limit on the number of possible redundant
313
MB_LEN_MAX
shift sequences.
Example
1 #include <stdio.h>
2
3 char
*
p1 = "^[$B$3$l$OF|K\8lI=8=^[(J"; /
*
^[$BF|K\8lJ8;zNs^[(J
*
/
4 char
*
p2 = "^[$B$3$l$OF|1Q^[(Jmixed^[$BJ8;zNs^[(J"; /
*
Ascii + ^[$BF|K\8l^[(J
*
/
5 char
*
p3 = "^[$B$3$l$OH>3Q^[(J^N6@6E^O^[$B$H^[(JASCII^[$B:.9g^[(J";
6
7 int main(void)
8 {
9 printf("%s^[$B$H^[(J%s^[$B$H^[(J%s\n", p1, p2, p3);
10 }
244
While in the initial shift state, all single-byte characters retain their usual interpretation and do not alter the
shift state.
June 24, 2009 v 1.2
5.2.1.2 Multibyte characters
247
Commentary
The implementation of a stateful encoding has to pick a special character, which is not in the basic character
set, to indicate the start of a shift sequence. When not in the initial shift state, it is very unlikely that single
bytes will be interpreted the same way as when in the initial shift state.
C
++
The C
++
Standard does not explicitly specify this requirement.
Common Implementations
The ESC character, 0x1b, is commonly used to indicate the start of a shift sequence.
245
12) The trigraph sequences enable the input of characters that are not defined in the Invariant Code Set as
footnote
12
described in ISO/IEC 646, which is a subset of the seven-bit US ASCII code set.
Commentary
When trigraphs are used, it is possible to write C source code that contains only those characters that are in
the Invariant Code Set of ISO/IEC 646.
C90
The C90 Standard explicitly referred to the 1983 version of ISO/IEC 646 standard.
246
The interpretation for subsequent bytes in the sequence is a function of the current shift state.
Commentary
This wording is really a suggestion for the design of multibyte shift states (it is effectively describing the
processing performed by finite state machines, which is what a shift state encoding is). Being able to interpret
a byte independent of the current shift state would indicate that the sequence of bytes that resulted in the
current state were redundant.
The specification of the macro
MB_LEN_MAX
requires that the maximum number of bytes needed to handle
MB_LEN_MAX
313
a supported multibyte character be provided. It may, or may not, be possible to represent some redundant
shift sequence within the available bytes. The standard does not explicitly require or prohibit support for
redundant shift sequences.
C
++
A set of virtual functions for handling state-dependent encodings, during program execution, is discussed in
Clause 22, Localization library. But, this requirement is not specified.
Common Implementations
Implementations usually use a simple finite state machine, often automatically generated, to handle the
mapping of shift states into their execution character value. The extent to which sequences of redundant shift
sequences is supported will depend on the implementation.
Coding Guidelines
The sequence of bytes in a shift sequence are usually generated via some automated process. For this reason
a guideline recommending against the use of redundant shift sequences is unlikely to be enforceable, and
none is given.
247
— A byte with all bits zero shall be interpreted as a null character independent of shift state.byte
all bits zero
Commentary
This is a requirement on the implementation. This requirement makes it possible to search for the end of
a string without needing any knowledge of the encoding that has been used. For instance, string-handling
functions can copy multibyte characters without interpreting their contents.
v 1.2 June 24, 2009
5.2.1.2 Multibyte characters
250
C
++
2.2p3
. . . , plus a null character (respectively, null wide character), whose representation has all zero bits.
While the C
++
Standard does not rule out the possibility of all bits zero having another interpretation in other
contexts, other requirements (17.3.2.1.3.1p1 and 17.3.2.1.3.2p1) restrict these other contexts, as do existing
character set encodings.
248
— A byte with all bits zero shall not occur in the second or subsequent bytes of a Such a byte shall not occur
multibyte
character
end in initial
shift state
as part of any other multibyte character.
Commentary
This is a requirement on the implementation. The effect of this requirement is that partial multibyte characters
cannot be created (otherwise the behavior is undefined). A null character can only exist outside of the
sequence of bytes making up a multibyte character. For source files this requirement follows from the
requirement to end in the initial shift state. During program execution this requirement means that library
250 token
shift state
functions processing multibyte characters do not need to concern themselves with handling partial multibyte
characters at the end of a string.
The wording was changed by the response to DR #278 (it is a requirement on the implementation that
forbids a two-byte character from having a first, or any, byte that is zero).
C
++
This requirement can be deduced from the definition of null terminated byte strings, 17.3.2.1.3.1p1, and null
terminated multibyte strings, 17.3.2.1.3.2p1.
249
For source files, the following shall hold:
Commentary
These C-sentences specify requirements on a program. A program that violates them exhibits undefined
behavior.
Use of multibyte characters can involve locale-specific and implementation-defined behaviors. A source
44 locale-
specific
behavior
42
implementation-
defined
behavior
file does not affect the conformance status of any program built using it, provided its use of multibyte
characters either involves locale-specific behavior or the implementation-defined behavior does not affect
program output (e.g., they appear in comments).
Coding Guidelines
The creation of multibyte characters within source files is usually handled by an editor. The developer
involvement in the process being the selection of the appropriate character. In such an environment the
developer has no control over the byte sequences used. A guideline recommending against such usage is
likely to be impractical to implement and none is given.
250
— An identifier, comment, string literal, character constant, or header name shall begin and end in the initial
token
shift state
shift state.
Commentary
These are the only tokens that can meaningfully contain a multibyte character. A token containing a multibyte
character should not affect the processing of subsequent tokens. Without this requirement a token that did
not end in the initial shift state would be likely to affect the processing of subsequent tokens.
C90
Support for multibyte characters in identifiers is new in C99.
June 24, 2009 v 1.2
5.2.2 Character display semantics
252
C
++
In C
++
all characters are mapped to the source character set in translation phase 1. Any shift state encoding
transla-
tion phase
1
116
will not exist after translation phase 1, so the C requirement is not applicable to C
++
source files.
Coding Guidelines
The fact that many multibyte sequences are created automatically, by an editor, can make it very difficult for
a developer to meet this requirement. A developer is unlikely to intentionally end a preprocessing token,
created using a multibyte sequence, in other than the initial state. A coding guideline is unlikely to be of
benefit.
251
— An identifier, comment, string literal, character constant, or header name shall consist of a sequence of
valid multibyte characters.
Commentary
What is a valid multibyte character? This decision can only be made by a translator, should it chose to accept
multibyte characters.
In C90 it was relatively easy to lexically process a source file containing multibyte characters. The
context in which these characters occurred often meant that a lexer simply had to look for the character that
terminated the kind of token being processed (unless that character occurred as part of a multibyte character).
Identifier tokens do not have a single termination character. This means that it is not possible to generalise
support for multibyte characters in identifiers across all translators. It is possible that source containing a
multibyte character identifier supported by one translator will cause another translator to issue a diagnostic.
C90
Support for multibyte characters in identifiers is new in C99.
C
++
In C
++
all characters are mapped to the source character set in translation phase 1. Any shift state encoding
transla-
tion phase
1
116
will not exist after translation phase 1, so the C requirement is not applicable to C
++
source files.
Coding Guidelines
In some cases source files can contain multibyte characters and be translated by translators that have no
knowledge of the structure of these multibyte characters. The developer is relying on the translator ignoring
them in comments containing their native language, or simply copying the character sequence in a string
literal into the program image. In other cases, for instance identifiers, knowledge of the encoding used for
the multibyte character set is likely to be needed by a translator.
Ensuring that a translator capable of handling any multibyte characters occurring in the source is used, is a
configuration-management issue that is outside the scope of these coding guidelines.
5.2.2 Character display semantics
Commentary
There is no guarantee that a character display will exist on any hosted implementation. If such a device is
character display
semantics
supported by an implementation, this clause specifies its attributes.
C
++
Clause 18 mentions “display as a wstring” in Notes:. But, there is no other mention of display semantics
anywhere in the standard.
Common Implementations
Most Unix-based environments contain a database of terminal capabilities, the so-called termcap database.
[1332]
termcap
database
This database provides information to the host on a large number of terminal capabilities and characteristics.
Knowing the display device currently being used (this usually relies on the user setting an environment
variable) enables the database to be queried for device attribute information. This information can then be
used by an application to handle its output to display devices. There is a similar database of information on
printer characteristics.
v 1.2 June 24, 2009
Đăng ký:
Bài đăng (Atom)