# Simplified Chinese translation for opcode.
# Copyright (C) 2005 Free Software Foundation, Inc.
# This file is distributed under the same license as the binutils package.
# Meng Jie <zuxyhere@eastday.com>, 2005.
#
msgid ""
msgstr ""
"Project-Id-Version: opcodes 2.15.96\n"
"Report-Msgid-Bugs-To: \n"
"POT-Creation-Date: 2005-03-05 20:32+1030\n"
"PO-Revision-Date: 2006-01-15 02:10+0800\n"
"Last-Translator: Meng Jie <zuxyhere@eastday.com>\n"
"Language-Team: Chinese (simplified) <i18n-zh@googlegroups.com>\n"
"MIME-Version: 1.0\n"
"Content-Type: text/plain; charset=utf-8\n"
"Content-Transfer-Encoding: 8bit\n"

#: alpha-opc.c:331
msgid "branch operand unaligned"
msgstr "分支操作数未对齐"

#: alpha-opc.c:353 alpha-opc.c:374
msgid "jump hint unaligned"
msgstr "跳转提示未对齐"

#: arc-dis.c:76
msgid "Illegal limm reference in last instruction!\n"
msgstr ""

#: arm-dis.c:1267
msgid "<illegal precision>"
msgstr "<非法的精度>"

#. XXX - should break 'option' at following delimiter.
#: arm-dis.c:1912
#, c-format
msgid "Unrecognised register name set: %s\n"
msgstr "无法识别的寄存器名称集：%s\n"

#. XXX - should break 'option' at following delimiter.
#: arm-dis.c:1920
#, c-format
msgid "Unrecognised disassembler option: %s\n"
msgstr "无法识别的反汇编器选项：%s\n"

#: arm-dis.c:2093
#, c-format
msgid ""
"\n"
"The following ARM specific disassembler options are supported for use with\n"
"the -M switch:\n"
msgstr ""
"\n"
"下列 ARM 特定的反汇编器选项在使用 -M 开关时可用：\n"

#: avr-dis.c:112 avr-dis.c:122
#, c-format
msgid "undefined"
msgstr "未定义"

#: avr-dis.c:179
#, c-format
msgid "Internal disassembler error"
msgstr "反汇编器内部错误"

#: avr-dis.c:227
#, c-format
msgid "unknown constraint `%c'"
msgstr "未知的约束‘%c’"

#: cgen-asm.c:336 fr30-ibld.c:197 frv-ibld.c:197 ip2k-ibld.c:197
#: iq2000-ibld.c:197 m32r-ibld.c:197 openrisc-ibld.c:197 xstormy16-ibld.c:197
#, c-format
msgid "operand out of range (%ld not between %ld and %ld)"
msgstr "操作数越界(%ld 不在 %ld 和 %ld 之间)"

#: cgen-asm.c:358
#, c-format
msgid "operand out of range (%lu not between %lu and %lu)"
msgstr "操作数越界(%lu 不在 %lu 和 %lu 之间)"

#: d30v-dis.c:312
#, c-format
msgid "<unknown register %d>"
msgstr "<未知的寄存器 %d>"

#. Can't happen.
#: dis-buf.c:57
#, c-format
msgid "Unknown error %d\n"
msgstr "未知错误 %d\n"

#: dis-buf.c:66
#, c-format
msgid "Address 0x%s is out of bounds.\n"
msgstr "地址 0x%s 越界。\n"

#: fr30-asm.c:323 frv-asm.c:1298 ip2k-asm.c:530 iq2000-asm.c:465
#: m32r-asm.c:338 openrisc-asm.c:252 xstormy16-asm.c:284
#, fuzzy, c-format
msgid "Unrecognized field %d while parsing.\n"
msgstr "词法分析字段时出错\n"

#: fr30-asm.c:372 frv-asm.c:1347 ip2k-asm.c:579 iq2000-asm.c:514
#: m32r-asm.c:387 openrisc-asm.c:301 xstormy16-asm.c:333
msgid "missing mnemonic in syntax string"
msgstr "语法字符串中没有助记符"

#. We couldn't parse it.
#: fr30-asm.c:507 fr30-asm.c:511 fr30-asm.c:598 fr30-asm.c:699 frv-asm.c:1482
#: frv-asm.c:1486 frv-asm.c:1573 frv-asm.c:1674 ip2k-asm.c:714 ip2k-asm.c:718
#: ip2k-asm.c:805 ip2k-asm.c:906 iq2000-asm.c:649 iq2000-asm.c:653
#: iq2000-asm.c:740 iq2000-asm.c:841 m32r-asm.c:522 m32r-asm.c:526
#: m32r-asm.c:613 m32r-asm.c:714 openrisc-asm.c:436 openrisc-asm.c:440
#: openrisc-asm.c:527 openrisc-asm.c:628 xstormy16-asm.c:468
#: xstormy16-asm.c:472 xstormy16-asm.c:559 xstormy16-asm.c:660
msgid "unrecognized instruction"
msgstr "无法识别的指令"

#: fr30-asm.c:554 frv-asm.c:1529 ip2k-asm.c:761 iq2000-asm.c:696
#: m32r-asm.c:569 openrisc-asm.c:483 xstormy16-asm.c:515
#, c-format
msgid "syntax error (expected char `%c', found `%c')"
msgstr "语法错误(需要字符‘%c’，得到‘%c’)"

#: fr30-asm.c:564 frv-asm.c:1539 ip2k-asm.c:771 iq2000-asm.c:706
#: m32r-asm.c:579 openrisc-asm.c:493 xstormy16-asm.c:525
#, c-format
msgid "syntax error (expected char `%c', found end of instruction)"
msgstr "语法错误(需要字符‘%c’，却到达指令尾)"

#: fr30-asm.c:592 frv-asm.c:1567 ip2k-asm.c:799 iq2000-asm.c:734
#: m32r-asm.c:607 openrisc-asm.c:521 xstormy16-asm.c:553
msgid "junk at end of line"
msgstr "行尾有垃圾字符"

#: fr30-asm.c:698 frv-asm.c:1673 ip2k-asm.c:905 iq2000-asm.c:840
#: m32r-asm.c:713 openrisc-asm.c:627 xstormy16-asm.c:659
msgid "unrecognized form of instruction"
msgstr "无法识别的指令格式"

#: fr30-asm.c:710 frv-asm.c:1685 ip2k-asm.c:917 iq2000-asm.c:852
#: m32r-asm.c:725 openrisc-asm.c:639 xstormy16-asm.c:671
#, c-format
msgid "bad instruction `%.50s...'"
msgstr "错误的指令‘%.50s...’"

#: fr30-asm.c:713 frv-asm.c:1688 ip2k-asm.c:920 iq2000-asm.c:855
#: m32r-asm.c:728 openrisc-asm.c:642 xstormy16-asm.c:674
#, c-format
msgid "bad instruction `%.50s'"
msgstr "错误的指令‘%.50s’"

#. Default text to print if an instruction isn't recognized.
#: fr30-dis.c:41 frv-dis.c:41 ip2k-dis.c:41 iq2000-dis.c:41 m32r-dis.c:41
#: mmix-dis.c:284 openrisc-dis.c:41 xstormy16-dis.c:41
msgid "*unknown*"
msgstr "*未知*"

#: fr30-dis.c:319 frv-dis.c:410 ip2k-dis.c:313 iq2000-dis.c:191 m32r-dis.c:262
#: openrisc-dis.c:137 xstormy16-dis.c:170
#, c-format
msgid "Unrecognized field %d while printing insn.\n"
msgstr ""

#: fr30-ibld.c:168 frv-ibld.c:168 ip2k-ibld.c:168 iq2000-ibld.c:168
#: m32r-ibld.c:168 openrisc-ibld.c:168 xstormy16-ibld.c:168
#, c-format
msgid "operand out of range (%ld not between %ld and %lu)"
msgstr "操作数越界(%ld 不在 %ld 和 %lu 之间)"

#: fr30-ibld.c:181 frv-ibld.c:181 ip2k-ibld.c:181 iq2000-ibld.c:181
#: m32r-ibld.c:181 openrisc-ibld.c:181 xstormy16-ibld.c:181
#, c-format
msgid "operand out of range (%lu not between 0 and %lu)"
msgstr "操作数越界(%lu 不在 0 和 %lu 之间)"

#: fr30-ibld.c:732 frv-ibld.c:858 ip2k-ibld.c:609 iq2000-ibld.c:715
#: m32r-ibld.c:667 openrisc-ibld.c:635 xstormy16-ibld.c:680
#, c-format
msgid "Unrecognized field %d while building insn.\n"
msgstr ""

#: fr30-ibld.c:939 frv-ibld.c:1177 ip2k-ibld.c:686 iq2000-ibld.c:892
#: m32r-ibld.c:806 openrisc-ibld.c:737 xstormy16-ibld.c:828
#, c-format
msgid "Unrecognized field %d while decoding insn.\n"
msgstr ""

#: fr30-ibld.c:1088 frv-ibld.c:1458 ip2k-ibld.c:763 iq2000-ibld.c:1026
#: m32r-ibld.c:922 openrisc-ibld.c:817 xstormy16-ibld.c:941
#, c-format
msgid "Unrecognized field %d while getting int operand.\n"
msgstr ""

#: fr30-ibld.c:1217 frv-ibld.c:1719 ip2k-ibld.c:820 iq2000-ibld.c:1140
#: m32r-ibld.c:1018 openrisc-ibld.c:877 xstormy16-ibld.c:1034
#, c-format
msgid "Unrecognized field %d while getting vma operand.\n"
msgstr ""

#: fr30-ibld.c:1351 frv-ibld.c:1989 ip2k-ibld.c:882 iq2000-ibld.c:1263
#: m32r-ibld.c:1122 openrisc-ibld.c:946 xstormy16-ibld.c:1136
#, c-format
msgid "Unrecognized field %d while setting int operand.\n"
msgstr ""

#: fr30-ibld.c:1473 frv-ibld.c:2247 ip2k-ibld.c:932 iq2000-ibld.c:1374
#: m32r-ibld.c:1214 openrisc-ibld.c:1003 xstormy16-ibld.c:1226
#, c-format
msgid "Unrecognized field %d while setting vma operand.\n"
msgstr ""

#: frv-asm.c:978
msgid "register number must be even"
msgstr "寄存器数必须是偶数"

#: h8300-dis.c:358
#, c-format
msgid "Hmmmm 0x%x"
msgstr "Hmmmm 0x%x"

#: h8300-dis.c:744
#, fuzzy, c-format
msgid "Don't understand 0x%x \n"
msgstr "不理解类型“%s”\n"

#: h8500-dis.c:143
#, fuzzy, c-format
msgid "can't cope with insert %d\n"
msgstr "用下列通配符插入文件(&M)："

#. Couldn't understand anything.
#: h8500-dis.c:342
#, c-format
msgid "%02x\t\t*unknown*"
msgstr "%02x\t\t*未知*"

#: i386-dis.c:1733
msgid "<internal disassembler error>"
msgstr "<反汇编器内部错误>"

#: ia64-gen.c:297
#, c-format
msgid "%s: Error: "
msgstr "%s：错误："

#: ia64-gen.c:310
#, c-format
msgid "%s: Warning: "
msgstr "%s：警告："

#: ia64-gen.c:496 ia64-gen.c:730
#, fuzzy, c-format
msgid "multiple note %s not handled\n"
msgstr "未处理 move 指令"

#: ia64-gen.c:607
msgid "can't find ia64-ic.tbl for reading\n"
msgstr ""

#: ia64-gen.c:812
#, fuzzy, c-format
msgid "can't find %s for reading\n"
msgstr "无法打开 %1 进行读取"

#: ia64-gen.c:1036
#, c-format
msgid ""
"most recent format '%s'\n"
"appears more restrictive than '%s'\n"
msgstr ""

#: ia64-gen.c:1047
#, fuzzy, c-format
msgid "overlapping field %s->%s\n"
msgstr "域宽"

#: ia64-gen.c:1244
#, c-format
msgid "overwriting note %d with note %d (IC:%s)\n"
msgstr ""

#: ia64-gen.c:1443
#, c-format
msgid "don't know how to specify %% dependency %s\n"
msgstr "不知道如何指定 %% 依赖 %s\n"

#: ia64-gen.c:1465
#, c-format
msgid "Don't know how to specify # dependency %s\n"
msgstr "不知道如何指定 # 依赖 %s\n"

#: ia64-gen.c:1504
#, c-format
msgid "IC:%s [%s] has no terminals or sub-classes\n"
msgstr ""

#: ia64-gen.c:1507
#, c-format
msgid "IC:%s has no terminals or sub-classes\n"
msgstr ""

#: ia64-gen.c:1516
#, c-format
msgid "no insns mapped directly to terminal IC %s [%s]"
msgstr ""

#: ia64-gen.c:1519
#, c-format
msgid "no insns mapped directly to terminal IC %s\n"
msgstr ""

#: ia64-gen.c:1530
#, c-format
msgid "class %s is defined but not used\n"
msgstr ""

#: ia64-gen.c:1541
#, c-format
msgid "Warning: rsrc %s (%s) has no chks%s\n"
msgstr ""

#: ia64-gen.c:1545
#, fuzzy, c-format
msgid "rsrc %s (%s) has no regs\n"
msgstr "指数部分没有数字"

#: ia64-gen.c:2444
#, c-format
msgid "IC note %d in opcode %s (IC:%s) conflicts with resource %s note %d\n"
msgstr ""

#: ia64-gen.c:2472
#, c-format
msgid "IC note %d for opcode %s (IC:%s) conflicts with resource %s note %d\n"
msgstr ""

#: ia64-gen.c:2486
#, fuzzy, c-format
msgid "opcode %s has no class (ops %d %d %d)\n"
msgstr "尚未定义名为“%s”的 <draw_ops>"

#: ia64-gen.c:2816
#, c-format
msgid "unable to change directory to \"%s\", errno = %s\n"
msgstr "无法将当前目录切换至“%s”，errno = %s\n"

#. We've been passed a w.  Return with an error message so that
#. cgen will try the next parsing option.
#: ip2k-asm.c:92
msgid "W keyword invalid in FR operand slot."
msgstr ""

#. Invalid offset present.
#: ip2k-asm.c:117
msgid "offset(IP) is not a valid form"
msgstr ""

#. Found something there in front of (DP) but it's out
#. of range.
#: ip2k-asm.c:165
msgid "(DP) offset out of range."
msgstr "(DP) 偏移量越界"

#. Found something there in front of (SP) but it's out
#. of range.
#: ip2k-asm.c:206
msgid "(SP) offset out of range."
msgstr "(SP) 偏移量越界。"

#: ip2k-asm.c:222
msgid "illegal use of parentheses"
msgstr "括号的使用非法"

#: ip2k-asm.c:229
#, fuzzy
msgid "operand out of range (not between 1 and 255)"
msgstr "操作数越界(%lu 不在 0 和 %lu 之间)"

#. Something is very wrong. opindex has to be one of the above.
#: ip2k-asm.c:254
#, fuzzy
msgid "parse_addr16: invalid opindex."
msgstr "分析错误：非法 UTF-8 序列"

#: ip2k-asm.c:309
msgid "Byte address required. - must be even."
msgstr ""

#: ip2k-asm.c:318
msgid "cgen_parse_address returned a symbol. Literal required."
msgstr ""

#: ip2k-asm.c:376
#, fuzzy, c-format
msgid "%operator operand is not a symbol"
msgstr "使用寄存器栈传递参数和返回值"

#: ip2k-asm.c:430
msgid "Attempt to find bit index of 0"
msgstr ""

#: iq2000-asm.c:115 iq2000-asm.c:146
msgid "immediate value cannot be register"
msgstr "立即数不能是寄存器"

#: iq2000-asm.c:126 iq2000-asm.c:156
msgid "immediate value out of range"
msgstr "立即数越界"

#: iq2000-asm.c:185
msgid "21-bit offset out of range"
msgstr "21位长的偏移量越界"

#: iq2000-asm.c:210 iq2000-asm.c:240 iq2000-asm.c:277 iq2000-asm.c:310
#: openrisc-asm.c:90 openrisc-asm.c:144
msgid "missing `)'"
msgstr "缺少‘)’"

#: m10200-dis.c:199
#, c-format
msgid "unknown\t0x%02x"
msgstr "未知\t0x%02x"

#: m10200-dis.c:339
#, c-format
msgid "unknown\t0x%04lx"
msgstr "未知\t0x%04lx"

#: m10300-dis.c:767
#, c-format
msgid "unknown\t0x%04x"
msgstr "未知\t0x%04x"

#: m68k-dis.c:295
#, c-format
msgid "<internal error in opcode table: %s %s>\n"
msgstr "<操作数表中出现内部错误：%s %s>\n"

#: m68k-dis.c:1089
#, c-format
msgid "<function code %d>"
msgstr "<函数代码 %d>"

#: m88k-dis.c:746
#, fuzzy, c-format
msgid "# <dis error: %08x>"
msgstr "语法错误，非预期的 %s"

#: mips-dis.c:720
msgid "# internal error, incomplete extension sequence (+)"
msgstr ""

#: mips-dis.c:779
#, c-format
msgid "# internal error, undefined extension sequence (+%c)"
msgstr ""

#: mips-dis.c:1037
#, c-format
msgid "# internal error, undefined modifier(%c)"
msgstr "# 内部错误，未定义的修饰符(%c)"

#: mips-dis.c:1793
#, c-format
msgid "# internal disassembler error, unrecognised modifier (%c)"
msgstr ""

#: mips-dis.c:1805
#, c-format
msgid ""
"\n"
"The following MIPS specific disassembler options are supported for use\n"
"with the -M switch (multiple options should be separated by commas):\n"
msgstr ""

#: mips-dis.c:1809
#, c-format
msgid ""
"\n"
"  gpr-names=ABI            Print GPR names according to  specified ABI.\n"
"                           Default: based on binary being disassembled.\n"
msgstr ""
"\n"
"  gpr-names=ABI            根据指定的 ABI 打印通用寄存器名。\n"
"                           默认：根据被反汇编的二进制文件。\n"

#: mips-dis.c:1813
#, c-format
msgid ""
"\n"
"  fpr-names=ABI            Print FPR names according to specified ABI.\n"
"                           Default: numeric.\n"
msgstr ""
"\n"
"  fpr-names=ABI            根据指定的 ABI 打印浮点寄存器名。\n"
"                           默认：数字。\n"

#: mips-dis.c:1817
#, c-format
msgid ""
"\n"
"  cp0-names=ARCH           Print CP0 register names according to\n"
"                           specified architecture.\n"
"                           Default: based on binary being disassembled.\n"
msgstr ""
"\n"
"  cp0-names=ARCH           根据指定的架构打印 CP0 寄存器名。\n"
"                           默认：根据被反汇编的二进制代码。\n"

#: mips-dis.c:1822
#, c-format
msgid ""
"\n"
"  hwr-names=ARCH           Print HWR names according to specified \n"
"\t\t\t   architecture.\n"
"                           Default: based on binary being disassembled.\n"
msgstr ""
"\n"
"  hwr-names=ARCH           根据指定的架构打印 HWR 寄存器名。\n"
"                           默认：根据被反汇编的二进制代码。\n"

#: mips-dis.c:1827
#, c-format
msgid ""
"\n"
"  reg-names=ABI            Print GPR and FPR names according to\n"
"                           specified ABI.\n"
msgstr ""
"\n"
"  reg-names=ABI            根据指定的 ABI 打印通用寄存器和浮点寄存\n"
"                           器名。\n"

#: mips-dis.c:1831
#, c-format
msgid ""
"\n"
"  reg-names=ARCH           Print CP0 register and HWR names according to\n"
"                           specified architecture.\n"
msgstr ""
"\n"
"  reg-names=ARCH           根据指定的架构打印 CP0 和 HWR 寄存器名。\n"

#: mips-dis.c:1835
#, c-format
msgid ""
"\n"
"  For the options above, the following values are supported for \"ABI\":\n"
"   "
msgstr ""

#: mips-dis.c:1840 mips-dis.c:1848 mips-dis.c:1850
#, c-format
msgid "\n"
msgstr "\n"

#: mips-dis.c:1842
#, c-format
msgid ""
"\n"
"  For the options above, The following values are supported for \"ARCH\":\n"
"   "
msgstr ""

#: mmix-dis.c:34
#, fuzzy, c-format
msgid "Bad case %d (%s) in %s:%d\n"
msgstr "忽略大小写变化(&I)"

#: mmix-dis.c:44
#, c-format
msgid "Internal: Non-debugged code (test-case missing): %s:%d"
msgstr ""

#: mmix-dis.c:53
msgid "(unknown)"
msgstr "(未知)"

#: mmix-dis.c:519
#, fuzzy, c-format
msgid "*unknown operands type: %d*"
msgstr "未知的签名类型‘%s’\n"

#. I and Z are output operands and can`t be immediate
#. * A is an address and we can`t have the address of
#. * an immediate either. We don't know how much to increase
#. * aoffsetp by since whatever generated this is broken
#. * anyway!
#.
#: ns32k-dis.c:631
#, c-format
msgid "$<undefined>"
msgstr "$<未定义>"

#: ppc-opc.c:794 ppc-opc.c:822
msgid "invalid conditional option"
msgstr "无效的条件选项"

#: ppc-opc.c:824
msgid "attempt to set y bit when using + or - modifier"
msgstr ""

#: ppc-opc.c:852
msgid "offset not a multiple of 16"
msgstr "偏移量不是 16 的倍数"

#: ppc-opc.c:871
msgid "offset not a multiple of 2"
msgstr "偏移量不是 2 的倍数"

#: ppc-opc.c:873
msgid "offset greater than 62"
msgstr "偏移量大于 62"

#: ppc-opc.c:892 ppc-opc.c:937 ppc-opc.c:981
msgid "offset not a multiple of 4"
msgstr "偏移量不是 4 的倍数"

#: ppc-opc.c:894
msgid "offset greater than 124"
msgstr "偏移量大于 124"

#: ppc-opc.c:913
msgid "offset not a multiple of 8"
msgstr "偏移量不是 8 的倍数"

#: ppc-opc.c:915
msgid "offset greater than 248"
msgstr "偏移量大于 248"

#: ppc-opc.c:958
msgid "offset not between -2048 and 2047"
msgstr "偏移量不在 -2048 和 2047 之间"

#: ppc-opc.c:979
msgid "offset not between -8192 and 8191"
msgstr "偏移量不在 -8192 和 8191 之间"

#: ppc-opc.c:1007
msgid "invalid mask field"
msgstr "无效的掩码字段"

#: ppc-opc.c:1033
#, fuzzy
msgid "ignoring invalid mfcr mask"
msgstr "忽略 schema 名称“%s”，无效：%s"

#: ppc-opc.c:1075
msgid "ignoring least significant bits in branch offset"
msgstr ""

#: ppc-opc.c:1105 ppc-opc.c:1140
msgid "illegal bitmask"
msgstr "非法的位掩码"

#: ppc-opc.c:1205
msgid "value out of range"
msgstr "值越界"

#: ppc-opc.c:1273
#, fuzzy
msgid "index register in load range"
msgstr "初始值设定项中索引范围为空"

#: ppc-opc.c:1289
msgid "source and target register operands must be different"
msgstr ""

#: ppc-opc.c:1304
msgid "invalid register operand when updating"
msgstr ""

#: ppc-opc.c:1343
msgid "target register operand must be even"
msgstr "目的寄存器操作数必须是偶数"

#: ppc-opc.c:1357
msgid "source register operand must be even"
msgstr "源寄存器操作数必须是偶数"

#. Mark as non-valid instruction.
#: sparc-dis.c:760
msgid "unknown"
msgstr "未知"

#: sparc-dis.c:835
#, c-format
msgid "Internal error:  bad sparc-opcode.h: \"%s\", %#.8lx, %#.8lx\n"
msgstr "内部错误：错误的 sparc-opcode.h：“%s”，%#.8lx，%#.8lx\n"

#: sparc-dis.c:846
#, c-format
msgid "Internal error: bad sparc-opcode.h: \"%s\", %#.8lx, %#.8lx\n"
msgstr "内部错误：错误的 sparc-opcode.h：“%s”，%#.8lx，%#.8lx\n"

#: sparc-dis.c:895
#, fuzzy, c-format
msgid "Internal error: bad sparc-opcode.h: \"%s\" == \"%s\"\n"
msgstr "内部错误：错误的 sparc-opcode.h：“%s”，%#.8lx，%#.8lx\n"

#: v850-dis.c:225
#, fuzzy, c-format
msgid "unknown operand shift: %x\n"
msgstr "PRINT_OPERAND：未知的标点‘%c’"

#: v850-dis.c:237
#, c-format
msgid "unknown pop reg: %d\n"
msgstr "未知的弹栈寄存器：%d\n"

#. The functions used to insert and extract complicated operands.
#. Note: There is a conspiracy between these functions and
#. v850_insert_operand() in gas/config/tc-v850.c.  Error messages
#. containing the string 'out of range' will be ignored unless a
#. specific command line option is given to GAS.
#: v850-opc.c:69
msgid "displacement value is not in range and is not aligned"
msgstr ""

#: v850-opc.c:70
msgid "displacement value is out of range"
msgstr "偏移值越界"

#: v850-opc.c:71
msgid "displacement value is not aligned"
msgstr "偏移值未对齐"

#: v850-opc.c:73
msgid "immediate value is out of range"
msgstr "立即数越界"

#: v850-opc.c:84
msgid "branch value not in range and to odd offset"
msgstr "跳转越界且跳转偏移量为奇数"

#: v850-opc.c:86 v850-opc.c:118
msgid "branch value out of range"
msgstr "跳转越界"

#: v850-opc.c:89 v850-opc.c:121
msgid "branch to odd offset"
msgstr "跳转偏移量为奇数"

#: v850-opc.c:116
msgid "branch value not in range and to an odd offset"
msgstr "跳转越界且跳转偏移量为奇数"

#: v850-opc.c:347
msgid "invalid register for stack adjustment"
msgstr "用于调整堆栈的寄存器无效"

#: v850-opc.c:371
msgid "immediate value not in range and not even"
msgstr "立即数越界且不是偶数"

#: v850-opc.c:376
msgid "immediate value must be even"
msgstr "必须给出立即数"

#: xstormy16-asm.c:76
msgid "Bad register in preincrement"
msgstr "前置自增中使用了错误的寄存器"

#: xstormy16-asm.c:81
msgid "Bad register in postincrement"
msgstr "后置自增中使用了错误的寄存器"

#: xstormy16-asm.c:83
msgid "Bad register name"
msgstr "错误的寄存器名"

#: xstormy16-asm.c:87
msgid "Label conflicts with register name"
msgstr "标号与寄存器名冲突"

#: xstormy16-asm.c:91
msgid "Label conflicts with `Rx'"
msgstr "标号与‘Rx’冲突"

#: xstormy16-asm.c:93
msgid "Bad immediate expression"
msgstr "错误的立即数表达式"

#: xstormy16-asm.c:115
msgid "No relocation for small immediate"
msgstr ""

#: xstormy16-asm.c:125
msgid "Small operand was not an immediate number"
msgstr ""

#: xstormy16-asm.c:164
msgid "Operand is not a symbol"
msgstr "操作数不是一个符号"

#: xstormy16-asm.c:172
msgid "Syntax error: No trailing ')'"
msgstr "语法错误：没有结尾的‘)’"
