سلام و خسته نباشید به همه مهندسان عزیز پیشاپیش هم عید بر همه شما مبارک باشد دوستان، من به یک مشکل بر خودم و می خواستم از لایبرری های codevision استفاده کنم.
این لایبرری که من بهش نیاز دارم به زبون اسمبلی نوشته شده و کمک می خواستم اینو یک نفر برای من به c تبدیل کند چون من هیچی از اسمبلی سر در نمیارم کد رو در این زیر می نویسم اما اصل فایل تو لایبرری codevision هستش به نام bcd
unsigned char bcd2bin(unsigned char n)
{
#asm
ld r30,y
swap r30
andi r30,0xf
mov r26,r30
lsl r26
lsl r26
add r30,r26
lsl r30
ld r26,y+
andi r26,0xf
add r30,r26
ret
#endasm
}
unsigned char bin2bcd(unsigned char n)
{
#asm
ld r26,y+
clr r30
bin2bcd0:
subi r26,10
brmi bin2bcd1
subi r30,-16
rjmp bin2bcd0
bin2bcd1:
subi r26,-10
add r30,r26
ret
#endasm
}
بازم تشکر
این لایبرری که من بهش نیاز دارم به زبون اسمبلی نوشته شده و کمک می خواستم اینو یک نفر برای من به c تبدیل کند چون من هیچی از اسمبلی سر در نمیارم کد رو در این زیر می نویسم اما اصل فایل تو لایبرری codevision هستش به نام bcd
unsigned char bcd2bin(unsigned char n)
{
#asm
ld r30,y
swap r30
andi r30,0xf
mov r26,r30
lsl r26
lsl r26
add r30,r26
lsl r30
ld r26,y+
andi r26,0xf
add r30,r26
ret
#endasm
}
unsigned char bin2bcd(unsigned char n)
{
#asm
ld r26,y+
clr r30
bin2bcd0:
subi r26,10
brmi bin2bcd1
subi r30,-16
rjmp bin2bcd0
bin2bcd1:
subi r26,-10
add r30,r26
ret
#endasm
}
بازم تشکر
دیدگاه