一: 问题描述
对于XN+1或XN*2图灵机进行模拟,任意给定的十进制数a,转换为收缩扩展二进制的编码,再编程模拟此Turing机的运行过程,输出从开始运行起的每一步骤的结果。
二:开发环境
Microsoft Visual Studio 2019
三:流程图
四:设计思路
1:输入一个十进制数字,将十进制数字转化成二进制数字;
2:将二进制转化成图灵机扩展的二进制编码;
3:图灵机在扩展二进制位实现(XN2)的运算指令:00→00R, 01→10R, 10→01R, 11→100R, 100→111R, 110→01STOP;
4:通过图灵机XN2运算指令输出每一步的运算结果;
5:将图灵二进制转换为二进制;
6:将二进制转换为十进制,输出结果。
五:代码实现
1.二进制的转换
2.转换为收缩扩展二进制的编码
3.实现(XN*2)的运算指令
4.将图灵二进制转换为二进制
5.将二进制转换为十进制
六:结果