十六进制数转换为ascii码流程图怎么画

十六进制数转换为ascii码流程图怎么画,第1张

下面是将十六进制数转换为ASCII码的流程图:

1. 输入十六进制数

2. 拆分十六进制数

3. 将每个拆分出来的十六进制数转换为对应的十进制数

4. 将每个十进制数转换为对应的ASCII字符

5. 将转换后的ASCII字符序列输出

以下是具体流程图的细节:

开始 ->输入十六进制数 ->拆分十六进制数 ->转换为十进制数 ->转换为ASCII字符 ->输出ASCII字符序列并结束。

拆分十六进制数:

将输入的十六进制数每两个一组进行拆分,并存储到一个数组或者列表中。

转换为十进制数:

根据十六进制的计数规则,将每个两位的十六进制数转换为对应的十进制数。

转换为ASCII字符:

根据ASCII表,将每个十进制数转换为对应的ASCII字符。

输出ASCII字符序列并结束:

将所有转换后的ASCII字符按照拼接成一个字符串或字节序列,然后输出到屏幕或存储到文件中。

       CODES  SEGMENT

              ASSUME    CS:CODES

      START:

              PUSH      CS

              POP       DS

    此处输入代码段代码

              MOV       BX, 8421H   给定一个4位的16进制数

              MOV       AH, 2       向标准输出设备输出一个字符

              MOV       CX, 16      循环16次

      AGAIN:

              MOV       DL, '0'       假定当前bx的最高位为0

              ADD       BX, BX        bx=bx*2 也就是左移1位

              JNC       DISP          进位标志不置位时(即bx的最高位为0时)转disp

              INC       DL            进位标志置位时(即bx的最高位为1时)加1

                                      也就是变为 '1'  

       DISP:

              INT       21H

              LOOP      AGAIN

    

              MOV       AH, 4CH     程序结束

              INT       21H

       CODES  ENDS

              END       START

西门子S7-200PLC早已经停产了,代替他的是Smart,当然S7-1200在一些场合上也是会用于代替200的产品,但是以往的产品还是有很多场合在使用,而且市场上有很多类似的高仿制品在使用着,并且,很多指令方面的应用,也是大同小异,多了解些内容,也有助于后面自己对不同PLC的学习。

今天这里分享的指令是16进制码和ASCII码之间的转换,16进制转换为ASCII码,VB103中如果是FF ,VB2=3 那么从VB130开始的3个字节的ASCII码值为F F 0 ,如果VB2=4 ,那么VB103的开始4个字节的ASCII就是F F 0 0,如下图:

第二个分享的是BCD码与整数之间的转换,以16进制的格式进行写入,比如VW0赋值为256,对应的16进制位16#0100,这时候输出VW4=100,VW8里面的值是多少,VW20里面的值就是多少,但是输出格式是16进制。当然,如果将一个两位数用数码管显示出来,就必须先将转换成BCD码,然后再用段码指令进行输出。

以上的主要还是对指令的熟悉,如果手边有PLC的话,是可以在线监控,这样就更好的理解了,也希望大家有好的学习方法与我进行交流,谢谢!


欢迎分享,转载请注明来源:内存溢出

原文地址: http://outofmemory.cn/yw/11187141.html

(0)
打赏 微信扫一扫 微信扫一扫 支付宝扫一扫 支付宝扫一扫
上一篇 2023-05-14
下一篇 2023-05-14

发表评论

登录后才能评论

评论列表(0条)

保存