CSE 230作业代写、代做Palindrome Checker作业、代写Python,c++编程作业调试Matlab程序|代做Python程序

CSE 230 Project 3: UART Palindrome CheckerLearning Objectives:● Create modular code and interface with unfamiliar modularized codeThe TaskIn this project, you will be writing a program that receives a string of characters via the UART, checks if thisstring is a palindrome, and then uses a print function to print either “Yes” or “No”. A palindrome sequence ofcharacters (typically a word or phrase) that is the same both forwards and backwards. For this project, stringswill be terminated using a period (‘.’). You may assume that a string will contain at least one character inaddition to a period. You will not need to handle empty strings or strings with only a period. Your programshould be able to handle multiple strings sent one after another or concatenated together. For example, thestring: “abba. data.” should print “Yes” followed by “No” on the next line. Spaces should be ignored whenchecking for a palindrome and the palindrome should not be case sensitive. For example, “A nut for a jar ofTuna.” would be considered a palindrome. Your program does not need to handle strings with characters otherthat spaces, periods, and letters. Individual, period-terminated strings will not be longer than 100 characters,however during the course of testing more than 100 characters may be sent to your program.Print FunctionA skeleton PLP project file is available to download on Canvas. The PLP project includes a second ASM file titled,project3_print.asm. This ASM file contains the print function used in this project. PLPTool concatenates all ASMfiles within a PLP project into a single location in memory (unless additional .org statements have been added tospecify different location for code). No changes to project3_print.asm should be made.When called, depending on the value in register $a0, the following string will be displayed on the simulatedUART device’s output. If $a0 contains a zero then “No” will be displayed and if $a0 contains a non-zero value(e.g. one) then “Yes” will be displayed. The print function is called using the following instruction:call project3_printTo use the print function, your PLP program needs to initialize the stack pointer ($sp) before performing thefunction call (or any other operations involving the stack pointer). For this reason, the skeleton project fileincludes an initialization that sets the stack pointer to 0x10fffffc (the last address of RAM).Palindrome Checking StrategiesThere are two strategies I would recommend for saving your string in in memory and checking to see if it is apalindrome. The first would be to use only an array and keep a pointer (a register containing a memory address)for both the first element in the array (commonly referred to as a head pointer) and last element in the array(commonly referred to as a tail pointer). As you add elements to your array, update your tail pointer so that itmoves to the new last element in the array. When you have reached the end of your string (a period has beenreceived), you can perform your palindrome check comparing the characters your head and tail pointers point toand, if they point to the same character, move them both inwards towards the center of your array. If thepointers cross and all the characters were the same, your string was a palindrome. The second strategy wouldbe to use an array, treated as a queue, and the stack. You can traverse the array from the start (the firstcharacter saved) to the end (the last character saved) while simultaneously popping characters off the stack. Thequeue will give you the string forwards and the stack will give you the string backwards.For both techniques I described above, keep in mind they are simpler if you perform some conditioning to thecharacters you receive before saving them. For example you don’t need to save spaces in your data structure(s)since they can be ignored and the comparisons are simpler if, when first receiving character, you convert themall to the same case (either all upper or all lower) before storing them. That way you won’t need to write logicthat indicates things like “A” == “a” and “A” == “a”.Deliverables:1. Take the Project 3 Pre Quiz (6 points)2. Submit your program on Canvas with the format: Firstname_Lastname_project3.plp (21 points)3. Take the Project 3 Post Quiz (3 point)本团队核心人员组成主要包括硅谷工程师、BAT一线工程师,精通德英语!我们主要业务范围是代做编程大作业、课程设计等等。我们的方向领域:window编程 数值算法 AI人工智能 金融统计 计量分析 大数据 网络编程 WEB编程 通讯编程 游戏编程多媒体linux 外挂编程 程序API图像处理 嵌入式/单片机 数据库编程 控制台 进程与线程 网络安全 汇编语言 硬件编程 软件设计 工程标准规等。其中代写编程、代写程序、代写留学生程序作业语言或工具包括但不限于以下范围:C/C++/C#代写Java代写IT代写Python代写辅导编程作业Matlab代写Haskell代写Processing代写Linux环境搭建Rust代写Data Structure Assginment 数据结构代写MIPS代写Machine Learning 作业 代写Oracle/SQL/PostgreSQL/Pig 数据库代写/代做/辅导Web开发、网站开发、网站作业ASP.NET网站开发Finance Insurace Statistics统计、回归、迭代Prolog代写Computer Computational method代做因为专业,所以值得信赖。如有需要,请加QQ:99515681 或邮箱:[email protected] 微信:codehelp

你可能感兴趣的:(CSE 230作业代写、代做Palindrome Checker作业、代写Python,c++编程作业调试Matlab程序|代做Python程序)