什么是tst.b或tst.w指令呢?

时间:2017-06-25 18:14:06

标签: assembly embedded msp430

我理解它应该是“测试目的地”,但究竟是什么意思呢? .w和.b的操作如下: DST +地址0FFFFh + 1dst + 0FFh的+ 1

1 个答案:

答案 0 :(得分:8)

通常public ExpensesByMonth ChartMonthlyExpenses() { // Retreives all transactions from repository List<Transaction> allTransactions = _repository.SelectAllTransactions(); // Filter transactions by transaction type (2 = expenses) var filteredTransactions = (from transactions in allTransactions where transactions.Type == 2 select transactions); // Made some modifications to jdweng's query in order to adapt it to existing codebase var results = filteredTransactions.GroupBy(x => new { month = x.OriginDate.Month, year = x.OriginDate.Year }).Select(x => new { month = x.Key.month, year = x.Key.year, amount = x.Select(y => y.Amount).Sum() }).ToList(); // Instantiating a new object containing all month's expenses as properties ExpensesByMonth expenseObj = new ExpensesByMonth(); // Looping through each result and assigning the amounts to a certain property, using a switch statement foreach(var result in results) { switch (result.month) { case 1: expenseObj.JanuaryExpenses = result.amount; break; case 2: expenseObj.FebruaryExpenses = result.amount; break; case 3: expenseObj.MarchExpenses = result.amount; break; case 4: expenseObj.AprilExpenses = result.amount; break; case 5: expenseObj.MayExpenses = result.amount; break; case 6: expenseObj.JuneExpenses = result.amount; break; case 7: expenseObj.JulyExpenses = result.amount; break; case 8: expenseObj.AugustExpenses = result.amount; break; case 9: expenseObj.SeptemberExpenses = result.amount; break; case 10: expenseObj.OctoberExpenses = result.amount; break; case 11: expenseObj.NovemberExpenses = result.amount; break; case 12: expenseObj.DecemberExpenses = result.amount; break; } } return expenseObj; } 表示:使用按位AND组合这两个值,然后根据结果设置状态寄存器,但不存储结果本身。

在MSP430上,test指令只有一个参数;在这种情况下,“测试值”似乎与“将值比较为0”相同。

事实上,MSP430的一些未知编译器的the manual表示:

  

TSTTST(.B) xxx

的缩写