当前位置: 首页 > news >正文

【常见错误】Xilinx Vivado自带编辑器文字部分出现乱码解决办法

一、发现问题

在进行FPGA开发时,常用的代码编辑器比如Sublime,但是最近发现再Sublime中编辑的代码文字部分,在用Vivado自带的编辑器打开时,会出现文字错乱的情况,如下图:

而在Sublime中实际的情况却是下图这样,这样就会导致代码的易读性降低。

二、解决问题

这是由于Sublime端编码方式导致的,将Sublime文件设置成GBK编码即可,如下图所示,设置成功后CTRL+S保存,再从Vivado自带的编辑器打开代码,就可以看到代码中文字部分显示就正常了。

三、导致代码文字乱码原因

为啥将编码格式设置为GBK就解决问题了,这是因为Vivado采用的是ANSI码,不同的国家和地区制定了不同的标准,由此产生了 GB2312、GBK、GB18030、Big5、Shift_JIS 等各自的编码标准。这些使用多个字节来代表一个字符的各种汉字延伸编码方式,称为 ANSI 编码。在简体中文Windows操作系统中,ANSI 编码代表 GB2312编码,即GBK编码;在繁体中文Windows操作系统中,ANSI编码代表Big5;在日文Windows操作系统中,ANSI 编码代表 JIS 编码。所以在Sublime中设置为GBK编码,在Vivado中就可以识别了。

四、GBK编码

GBK编码,是对GB2312编码的扩展,因此完全兼容GB2312-80标准。GBK编码依然采用双字节编码方案,其编码范围:8140-FEFE,剔除xx7F码位,共23940个码位。共收录汉字和图形符号21886个,其中汉字(包括部首和构件)21003个,图形符号883个。GBK编码支持国际标准ISO/IEC10646-1和国家标准GB13000-1中的全部中日韩汉字,并包含了BIG5编码中的所有汉字。GBK编码方案于1995年12月15日正式发布,这一版的GBK规范为1.0版。

由于ASCII编码是不支持中文的,但又需要寻求一种编码方式来支持中文。于是,国人就定义了一套编码规则:当字符小于127位时,与ASCII的字符相同,但当两个大于127的字符连接在一起时,就代表一个汉字,第一个字节称为高字节(从0xA1-0xF7),第二个字节为低字节(从0xA1-0xFE),这样大约可以组合7000多个简体汉字。这个规则叫做GB2312。

由于中国汉字很多,有些字还是无法表示,于是重新定义了规则:不在要求低字节一定是127之后的编码,只要第一个字节是大于127,就固定表示这是一个汉字的开始,不管后面跟的是不是扩展字符集里的内容。这种扩展之后的编码方案称之为GBK,包含了GB2312的所有内容,同时新增了近20000个新的汉字(包括繁体字)和符号。但是,中国有56个民族,每个民族都有自己的文字,所以,对GBK编码规则进行了扩展,又加了近几千个少数民族的字符,再次扩展后得编码叫做GB18030,GBK字符是被包含在GB18030字符内的,与GBK基本向后兼容。GB18030共收录汉字70,244个。

http://www.jsqmd.com/news/500055/

相关文章:

  • 数字孪生国内外发展现状
  • 【Xilinx Vivado时序分析/约束系列2】FPGA开发时序分析/约束-建立时间
  • 终极指南:使用Google Map React库快速构建交互式地图应用
  • JetBrains 插件 IDE设置
  • 学霸同款!全领域适配的论文神器 —— 千笔
  • STM32-串口使用注意事项
  • Kubernetes 认证通关指南:CKA/CKS/CKAD 最新题库 + 本地仿真环境 + 模拟考
  • 2.postman断言
  • 具身智能中 Wrapper 架构的深度解构与 Python 实战
  • 深度解析 | 2026新范式:当“Token”取代比特币,成为真正的数字石油
  • 李南左日更3327:为什么员工都在摸鱼?是因为你曾经不信任他们
  • 终极Git与GitHub教程:从零开始掌握版本控制的完整指南
  • 【Xilinx Vivado时序分析/约束系列3】FPGA开发时序分析/约束-保持时间
  • 2026年靠谱的孝感钻井厂家推荐:十堰钻井/养殖场钻井公司精选 - 品牌宣传支持者
  • # 发散创新:用Go语言高效接入InfluxDB实现时序数据采集与可视化在现代微服务架构中,**时序数据
  • 【Xilinx Vivado时序分析/约束系列4】FPGA开发时序分析/约束-实验工程上手实操
  • 终极指南:如何快速掌握JEnv进行Java环境管理
  • reCAPTCHA PHP错误代码完全解析:快速定位和解决验证问题
  • 关于旧系统+旧安卓版本realme手机的原生文件管理不支持向微信好友一次性发送多个非照片格式文件的问题和解决方案
  • 探索阿里云盘: odomu/aliyunpan - 更智能、更便捷的云存储助手
  • 小程序实现“一码通用”
  • 7分钟掌握RuboCop:Ruby代码质量终极守护者指南
  • Python WebSockets 终极指南:构建高性能实时双向通信应用 [特殊字符]
  • 【Xilinx Vivado时序分析/约束系列5】FPGA开发时序分析/约束-IO时序分析
  • Nano Node选举机制深度分析:为什么它能实现零费用交易
  • Apache NuttX文件系统实战:FAT、ROMFS、NFS等12种文件系统详解
  • Docker学习(一) -- 理论及Linux安装、windows安装
  • 如何用GPT-Prompt-Engineer打造高效AI对话助手:新手必备的终极指南
  • Apache NuttX实战案例:构建智能家居控制系统的完整流程
  • Docker学习(三) -- 镜像、目录挂载(卷映射)、配置映射