lab5: improve weighting during compilation, fix assembly operator translation bug

This commit is contained in:
2026-11-07 21:02:02 +02:00
parent 36b4596bd4
commit 7a90247dc0
5 changed files with 43 additions and 3 deletions
+1 -1
View File
@@ -43,7 +43,7 @@ class System
private:
std::vector<Command> *program_memory;
std::array<MemCell, DYN_PIPELINE_MEM_SIZE> data_memory;
std::array<int, CMD_COUNT> delays {2, 2, 5, 5, 9};
std::array<int, CMD_COUNT> delays;
std::array<int, DYN_PIPELINE_LAYERS> layer_cmd {-1};
unsigned int pc {0};
unsigned int system_time;
+2
View File
@@ -2,6 +2,7 @@
#include <vector>
#include "expression.hpp"
#include "dyn-pipeline.hpp"
namespace Syntax
{
@@ -10,5 +11,6 @@ int prepare_token_vector(std::vector<Expression::Token>& tv);
std::vector<Expression::Operation> build_op_vector(const std::vector<Expression::Token>& tv);
Expression::TreeNode ov_to_tree(const std::vector<Expression::Token>& tv, const std::vector<Expression::Operation>& ov);
void print_op_tree(const std::vector<Expression::Token>& tv, const std::vector<Expression::Operation>& ov);
int op_weight(DynamicPipeline::CommandType o);
}